but it would involve transparent synchronization between all your devices, and that's a problem nobody's adequately solved. But if you had transparent synchronization, you would be in control of your data.
False.
I've been able to adequately sync my calanders, email and documents across multiple machines for years, it just requires me running my own servers to do so.
Now, 'the cloud' really just translates to 'some company running servers for you'.
Email via imap has been this way for years, pop3 as well sort of if you leave messages on the server. Contacts and Calanders? Exchange has done it for god knows how long now and I can still run my own exchange server or let someone else do it in the cloud.
'The Cloud' is not new or different. Software is.
More and more software is finally starting to USE the standard protocols we have for this things so we get more selection of client software, but none of it is 'new' by any sane sense of the word. The 'new' part is that a lot of people stopped trying to invent their own methods to do it.
Google and Apple have helped this tremendously by using the standard protocols themselves and using theirs size and market control to actually force others into moving that direction too. This is one of those rare times when the companies own best interests are actually favorable to us. Enjoy it while it lasts.
You can however, create your own cloud with freely available software, but turning it into something as smooth and well presented as say Google Apps is another story because they have an entire staff of people making sure it works right because THATS WHAT THEY DO.
You don't do it yourself because you probably have other things that you need to do that are more important than maintaining your own server(s) just to get some synchronization. I maintained my own servers until Google AFYD started to really kick ass, now? I pay Google for the privilege of not having to bother with my own machines. I pay in both money tendered and customizability lost, but for me, the trade off is worth it. If I spend even 1 day a year working on my own 'servers' its already cost me more than the multiple domain names and my entire families (all living relations) GAFYD account.
My time is simply far too valuable and important to me to spend it dicking around with all this crap, its cheaper for me to pay someone else when all costs are considered.
Your time may be worth less than mine so it might make sense for you to do it yourself, but not for me.