Me parece muy curioso, la verdad, y probaré alguna cosa a ver si entiendo por qué ocurre esto, pero no obstante: ¿qué utilidad tiene un "si no es IE"? no lo acabo de ver.
Quiero decir: en realidad esto
Cita: <head>
<!--[if IE]><style type="text/css">
.caja {color: #f00;}
</style>
<![endif]-->
<![if !(IE)]><style type="text/css">
.caja {color: #0f0;}
</style>
<![endif]>
</head>
debe ser exactamente lo mismo que esto
Cita: <head>
<style type="text/css">
.caja {color: #0f0;}
</style>
<!--[if IE]><style type="text/css">
.caja {color: #f00;}
</style>
<![endif]-->
</head>
¿no?