scusate ma qui si prendono fischi per fiaschi...
il fatto che non si acceda ad elementi di un form tramite getElementById('id') non vuole automaticamente dire che si stiano usando metodi proprietari
il fatto che non si creino specifici nuovi elementi con createElement + appendChild non vuole automaticamente dire che si stiano usando metodi proprietari

esiste il buon vecchio javascript, universalmente supportato da browser antichi e moderni, che ha una sintassi per accedere ai form e agli elementi di questo (via name o per indice nel relativo array) e un costruttore Option

sintassi correttamente seguite nello script postato da CrastoMarco
che mi risulta funzionare perfettamente anche in Firefox, come e' lecito attendersi

quindi l' errore o gli errori sono altrove,
per es. in grassetto ti ho evidenziato un possibile errore: segni nel markup solo gli id e provi ad accedervi via name, IE non batterebbe ciglio in questo caso, prendendosi una liberta' grossa come una casa dove gli altri browser non si permetterebbero mai...
ciao