risolto!

mancava il meta tag
<meta http-equiv="content-type" content="text-html; charset=utf-8">

andrebbe inviato anche un heder cgi

print header(-type => "text/html", -charset => "utf-8");

ma se ci provo, la pagina non viene caricata.

adesso faccio un po di test con i vari browser per vedere se il meta va bene con tutti.. finora con FF3 e IE6 le pagine vengono caricate correttamente.