This seems to be a problem in a core function of php. If you try to get the server's timezone with date(), you'll also get a wrong value. mail() seems to rely on the same value.
For mail(), you can set the value manually by setting the Date-Header.
I experience this Problem on W2K Server SP2 with php as CGI running on IIS 5.
Christoph