Hummm, I would have never figured this out. My 3rd OS is Ubuntu looks like I should boot into that and see what happens.  If this is the case I doubt there's a fix, really annoying too 
		 
		
	 
Ubuntu forum link
I just had this exact same problem when I installed Ubuntu 9.04 on a second hardrive
on my Gateway win7 run desktop. For some reason 9.04 kept UTC time. 
In /etc/default/rsC..(or rcS).. UTC was set to Yes I reset it to No and the problem was gone. 
My laptop dual/boots WinXP/ubuntu 8.04 on one drive and I never had the problem
because when I looked in /etc/default/rsC UTC was set to No.
Setup OSX to not use time synching with Internet servers and that way it will always use the hardware(bios) clock that Windows sets.
Basically if you can't figure out how to make OSX not use UTC time then 
let your most used system be the sole time keeper for all 3 systems.
In the link I posted I actually created a new scheduled task in Windows to 
Internet synch at Startup and I watched the clock go from 7 hours fast to correct local time while the desktop was loading. But I no longer need that task and it has been retired.