pardon the ignorance but why don’t you just add your IE css to the template headers?
also you don’t need the if !IE for non-IE browsers, just add your IE specific css files after your main css file and let the Cascading do its job overwriting the rules.
something like this:
<title>[*pagetitle*] - [(site_name)]</title>
<base href="[(site_url)]"></base>
<link href="style.css" rel="stylesheet" media="screen" type="text/css" />
<link href="typography.css" rel="stylesheet" media="screen" type="text/css" />
<!--[if IE]> <link href="assets/templates/blackgold/ssc-style-ie.css" rel="stylesheet" media="screen" type="text/css" /> <![endif]-->
<!--[if IE 6]> <link href="assets/css/style_ie6.css" rel="stylesheet" media="screen" type="text/css" /> <![endif]-->
[*include_CSS*]
IMHO most of the IE rules are usually just to fix design that IE don’t render properly so anyway they needed on all/most pages.
then if you need the flexibility to use other CSS files on certain page you can use the [*include_CSS*] to add them. that will also let you set several files at once instead of creating separate TV for each css file you got.