I had the same problem. Some calendars from my iCal synced correctly, but others were one day advanced. It is solved now. I just uncheked the Sync Calendars option in iTunes on my Mac, then synced the iPhone. After checking Sync Calendars again, I checked also the Calendars option in Replace all the info in this iPhone in the Advanced area of iTunes. Synced again and all the events returned to their correct date in the iPhone.
(My iTunes and iPhone are in Spanish, so maybe the names are not exactly as written )