First some background..
Your web server is determining that the file is a valid ZIP archive by using some MIME magic. So it delivers the HTTP response with the following header:
Content-Type: application/zip
When IE8 receives the file it has already been told that it is a ZIP. Then, when in it's default security setting of "Open files based on content, not file extension", it looks up a designated extension for that content type from the registry at HKEY_CLASSES_ROOT\MIME\Database\Content Type
.
There are a couple of ways that you could attack this. You could amend either of the two variables on the local machine above. But I certainly wouldn't recommend changing local machine settings wherever possible - it's hackish and won't scale. The best solution would be to amend the web server either by:
Setting up a static MIME declaration for the file's original extension to be sent as application/octet-stream
. This will prompt the file to be deliver as straight binary, with no content information.
Serving the files with the header Content-Disposition: attachment
which will cause IE to respect the filename specified by the web server. This may not be so simple depending on your platform though.