Well one problem is your internet connection. You can set up your own "cloud" using a computer at your house to act as a cloud server (there are even functions in the server edition of OSX to do this, including pushing data to your iDevices as well), however, the speed of the data connection will be limited by your home internet connection. Most home internet connections (at least where I live, in the USA) are pretty poor, particularly on the upload speed. So downloading a large file from your home server might take a long time compared to what you would get going from an enterprise class setup like google/amazon. For syncing contacts this won't make a big deal, but using a cloud service as backup or for file access? It could be significant.
Also, services will typically have superior uptime than your personal cloud. Again for personal usage it probably won't be as big a deal, but if your power goes out or your internet connection goes down while you're away, you could lose access to your cloud. And if it's an issue that requires physical attention, you might not be able to fix the issue if you're on vacation or on a business trip, etc. whereas Apple/amazon/google have staff at their server farms to fix problems as they arise.
If you are interested in maintaining your own cloud though, there really is nothing stopping you. For most it's just not worth the time or money to figure out how to set one up, make it secure, and possibly invest in hardware/services to ensure it operates reliably. But it's definitely possible, and probably not as hard as many think it is (in fact I think OSX Server has made it a lot easier in recent iterations). There are also a lot of tools/resources available from the open source community for setting up a linux box that does this too.
If you are not blessed with a high performance internet connection, you can always fork out more money to Comcast/Verizon/etc and get a business class internet hookup, with typically larger upload speed, static IP, etc. Also, your data cap likely gets raised. Finally, there are services like macminicoloco.com where you can pay a monthly fee to house your mac mini in their server room and utilize their reliable power and fat internet connection. I have actually become quite intrigued by this colocation service but for a casual single user it's not worth the montly fee (starting at about $30/mo I think) to operate.
That all said, I do agree with your sentiment that there is no real reason to use someone else's cloud, particularly if your usage demands are not that high. And I too would probably enjoy the greater control and privacy of operating my own "cloud" (or at least cloud-like network service). I don't use iCloud (but do still use it as MM) nor do I back anything up on it, mainly for syncing contacts/calendars/bookmarks, etc. Actually the biggest benefit I like about mobileme is the Back to my mac feature, which lets me access all my computers from anywhere, in a secure and hassle-free fashion.
Finally, there are some ready-made alternatives around too. For example I use a program called Synk, which in its latest version has a live syncing feature that sort of makes things operate like a cloud. I'll let their website describe the details but basically it works sort of like an independent cloud syncing service, and operates "point-to-point" between computers so there is no real cloud infrastructure involved. I use this to keep the documents folders of my home and work computers synced up. It works pretty slick actually, and even utilizes mobileme/icloud's back to my mac service so you can set it up on a laptop and get over-the-internet syncing no matter where you go. Anyway not trying to advertise but I have been a longtime user/fan of Synk and they have made some decent improvements with their latest version.
http://decimus.net/Synk