They are great with products. Less so with the area around the product. Can't have something as nebulous as a cloud without trying to control the product experience.
It's nice that I can use iCloud to find my iPhone and that it keeps my contacts in sync.
Except that it can't keep notes in sync correctly. Which shouldn't be surprising because notes aren't actually notes, they're stored in an email box. That's why you need an @me.com account to sync them.
Really there is no iCloud. There is an email service, a calendar service, a contacts service, a layer on the email service, a file storage service, a network transparent CoreData sync service (that is supposed to be very problematic), a todo service, a photo sharing service, and probably other things.
If it doesn't involve a network service, Apple can do wonderful things. If it does... well... it might work well enough; most of the time.
I think GP has it exactly right. Their hardware is great but their software is an embarrassment for a company with such resources.