I also had this problem since building my latest update binaries with the new SDK 4.
Interface Builder doesn't even have a field to set the time zone of the UIDatePicker so it has to be done in ViewDidLoad as suggested.
The documents say that leaving it nil and not setting a value would have the same behaviour as
datePicker.timezone = [NSTimeZone localtimezone];
but it definitely doesn't.
Not very helpful of Apple to change the default behaviour of this commonly used object. There must be a lot of app developers hit by this one and now receiving emails from users of their apps in different time zones complaining about their pickers displaying incorrect values.
Any one else out there had issues?