I have a solution for PC Outlook, iMac Calendar, iCloud Calendar, and iPhone Calendar not syncing properly. We have 4 devices between the two of us: 2 iPhone 4s, one PC with Outlook 2010, and one iMac with the latest Mountain Lion. Our problem was that sometimes Calendar entries would show up on other devices, and sometimes they would not. Apple Tech support were very helpful in a 2 hour 4 minutes session. We tried several things first, that did not work, but what did work was to first of all ensure that the iCloud calendar had all the events from both iPhones, and from the iMac and PC correctly entered.
Then we dealt first with one phone and then the other. We went to
Mail, Contacts, Calendars
down to bottom and pressed Delete Account.
Confirmed that we would erase all Calendar data on that phone.
Signed back in with the same account and password and merged with the iCloud calendar.
Then tested everything and all was fine.
That was yesterday. We will continue to test. Tech support will call me back to be sure it still works.
Note that we did not need to erase the entire phone, or create a new Apple ID.