Most people outside of mobile dev don't know this, but when iCloud shipped in iOS5 the API support was woefully not ready - heck, even Apple's own 1st-party apps that exploit iCloud had notorious syncing issues. To this day iCloud + Core Data support is buggy, poor, and more or less undocumented (the go-to guide for using it is a thread on the forums dozens of pages long full of angry devs and overwhelmed Apple engineers).
There are a number of rather egregious bugs still in the API today that date from iOS3, including one date parsing one that any iOS dev worth their salt has run into first-hand - every time a new release happens people circle back and are continually disappointed that major, easy to hit API bugs are left unattended for so long.
It really does seem like Apple is having trouble keeping up.
I remember when the iOS4 beta came out for developers - it was an incredibly solid beta, and the OS was stable and highly functional months before it was due. Compare with iOS5 and iOS6, the betas of which have both been notoriously buggy, crashy, and downright unusable right up until release. Devs have had to struggle with horrible stability and broken APIs in all beta builds right up until the day the GM drops.
It could be worse. Definitely not the worst API I've ever touched. But still, troubling.