beh... dalla descrizione mi sembra di essere di fronte ad un bug di IE! se il foglio di stile viene visualizzato nella parte visibile della pagina e nella restante no... non dipende certo dal JS! e se poi la pagina viene ricaricata il foglio di stile viene visualizzato... non può in alcun modo dipendere da JS...

io penso che dipenda dal rendering del browser...
io ho IE 6... se posti il link provo a vedere se con me fa lo stesso scherzo...
come alternativa ti propongo di mettere il tag
<LINK TYPE="text/css" REL="stylesheet" HREF="" id="stile" />
con href vuoto e a seconda del browser fai

document.getElementById("stile").href="/f24/styles/style_gen.css";

su NN4 dovrai usare ugualmente document.write

--------------------

oppure c'è un altro sistema
<LINK TYPE="text/css" REL="stylesheet" HREF="styleNN4.css" />
<style>
@import(style.css);
</style>

NN4 non conosce import e salta quel passaggio

ciao