in reply to Perl CGI, IIS and other unholy unions

You have the line

print "5<br>". "6<br>;";

with a period, not a dash. But that is only after the 4<br> that causes trouble, so that may not explain your problem.

Check the source code of the output in your IE browser, not the final output. There you might see something that explains the unwanted behaviour.