I realize this thread started about a bug in iOS4, but I have a new iPhone 4S with iOS5 and the bug is still present. The calendar displays the birthday information incorrectly, but I'd you look in the contacts app the dates are correct. Apparently the issue is for contacts that got loaded via a sync with my Mac, which I'd think is very common. The only workaround I've found is to delete the birthdate, save, then re-enter the birthdate and save. I have a few hundred contacts and having to redo all of their birthdates is far from ideal. I also don't know if or what will happen the next time I sync with my Mac. Hopefully Apple will fix this bug.
Here's a sort of workaround. In the preferences for iCal on the Mac, turn on the automatic birthday calendar. Verify the birthdays look correct on the Mac. Now sync to your iPhone. Look through the calendar on the iPhone. You should see the birthdays twice, once with a colored circle on the correct day (the Mac's birthday calendar, synced over), and once with a gift box on the wrong day (the iPhone-generated calendar based on your contacts). Now just tap the "calendars" button and hide the "Other" birthday calendar while keeping the "From My Mac" birthday calendar.
I think either sync services, or Google, or somebody had the internal representation of all-day events at 12pm vs 12am or something like that (I recall seeing sync conflicts in that regard in the past) and that's what confuses iOS.
I am pretty sure that we have a Daylight Savings problem. I live in Arizona part of the year (no DST) and Colorado part of the year (does do DST). You cannot imagine the problems I go through twice a year when DST changes. Synching my calendars has always been a challenge because the misalignment error depends on where the original entry was made.
BTW, the fix is to make sure that your Mac is correct. Then go to the iPhone and "Reset all settings." The next time you synch your calendar entries will all match. However, that does not solve the Birthday calendar problem.
Anyway, here is what I have:
Mac - contacts and calendar are correct. Synching is done via USB.
iPhone and iPad - contacts are correct, calendar on both shows birthdays one day early.
Somehow the comments about "all day" starting at 11 rather than at 12 seems the most likely explanation. Now - what to do about a fix?
I'm going to copy this and sent it to Apple just in case they are interested...........
Definitely agree with devnul about UNchecking the Birthdays calendar on the iPhone. Since MS added calendar sync to Outlook 2011, I have had issues calendar sync issues between Outlook and iCal on the Mac and iCal on the iPhone. (It used to work fine with Entourage 2004, which I returned to for several months, and did not even need to open iCal on my Mac.) I upgraded the OS to Snow Leopard in October and Outlook 2011 was better but the birthdays... What worked for me in addition to turning off the Birthdays calendar was UNchecking "Turn on time zone support" in the Advanced preferences of iCal on the Mac.
My theory is there is a conflict (even though the time zones may be the same) between time zone support in iCal and the System Preferences Time Zone in the Date & Time.
I have the Mac calendar set to "Time Zone Support" off. The calendar preferences box is set to "Show Automatic Birthdays."
My iPhone (4S) has "All Calendars from Mac" checked. Birthday calendar is off.
When I sync everything works except there are no birthdays shown. If I turn birthdays on I get the ones with the gift ribbon that are one day off. The birthday calendar does not come over from the Mac.
Two things to check...
On your Mac, System Preferenes > Date & Time > Time Zone and is the "Closest city" correct? Note: I do NOT use the "Set time zone automatically using current location" meaning it is UNchecked.
On your iPhone, Settings > General > Date & Time
Here I have Set Automatically to ON and the Time Zone shows a city in my area. However, one could have it OFF and then select a city...
I have iCal on my Mac and iPhone to NOT show birthday calendars. Birthdays show in on my Mac and iPhone without the gift box icon.
Have solved my problem of the birthday calendar showing incorrect dates. (The built in iPhone Birthday calendar was showing birthdays straddling two days). In one of my contacts, I changed the birthday by one day (backwards). Let contacts sync with iCloud. Went back in to Calendar app and hey presto all birthdays were showing correctly. (Then went back and corrected the contact's birthday).
Strange but worked.
Here's a solution to the 'one day late/early' birthdays so that you don't have to change dates in your contacts.
(1) If your iPad/phone is syncing contacts with iCloud, turn it off. In Settings on your iPad/phone, Mail,Contacts,Calendars, Accounts, iCloud, turn off Contacts.
(2) sync your iPad/phone to iTunes.
(3) now select the ‘Info’ tab in iTunes for your iPad/iPhone. Ensure that ‘Sync Address Book Contacts’ is ticked. (You can revert to syncing with iCloud later, after this process is complete.)
(4) scroll to the very bottom section of the Info tab. Where it says ‘Replace information on this iPad/iPhone’, select ‘Contacts’.
(5) Sync again.
Now check Calendars on iPad/iPhone, this process ‘fixes’ the information of birth dates and they should now appear correctly.
I tried this and it did not work (by the way I do not use, and have never used, iCloud so syncing with it has always been off).
However, I have found that by altering a date once to an incorrect date and then back again the calendar data does seem to fix itself. On the other hand, how long that will last...
Time, I think for Apple to get their act together and fix this. It is not as if the bug is new (I see that there are comments about this on this forum dating back to IOS 4) or that the area of the problem is unknown (see the postings flagged elsewhere).
This has been an issue since I had my iPhone 3G.
My current setup - iPad2 and iPhone4 bothe on iOS 5.1
Desktop, Mac Mini running OS X Lion 10.7.3
I synch all the iOS devices mail, contact and calendar with my work Exchange mail system through Active Sync
I synch my personal mail and contacts through gmail using active sync.
I synch only contacts with Address Book on OS X
On OS X I synch mail and calendars only with Gmail using iMAP and iCAL/WebDAV, my address book is populated from my phone sync.
If I add a contact in GMail with a birthday, it synchs back to iOS 1 day ahead on the phone. Every subsequent synch seems to start moving the date backwards on both devices.
Eventually this makes its way into Address Book when I synch the phone, and then my birthday calendar goes wrong 8(
This annoys the **** out of me!
This has been my problem since I got an iPhone years ago. Now on iOS 6 and still a problem. Birthdays look entered correctly in Address Book (synced with Gmail) but in the calendar view they are always one day off! (Early)
As an adde bonus every time I cross a date zone an my phone changes it automatically it messes up all my birthdays by one day back or forward depending on which way I travel. (I'm in New Zealand too, funnily enough)
Why hasn't this been fixed!!!!!!
Another glaring flaw that Apple should have caught before releasing IOS 6.1.2. This is a basic feature you can find in other operating systems. This is probably another reason why I chose not to upgrade from my iphone 4. I shouldn't have to go out and find yet another app to load on my phone just so I can track anniversaries. It goes to show how slow the IOS developers are at rectifying missing (key) features.