(1). You might want to ask a profesional SEO here, but the facts are, if you don't buy a domain from the beginning, then the day you decide to migrate you will have a lot of indexed links on Google pointing to the old address. You will have to ensure 301 redirects are taking place in order to mitigate ranking loss, and I'm not sure blogger and wp.com allow setting 301 redirects (maybe when buying a new domain exclusively to point to the blog hosted on their networks, they do 301 redirects).
I've seen a case where a moderately well-ranked blog with 4k+ users per day changed the domain name and it took a few months to recover the previous ranking, even with proper 301 redirects.
You also would lose social networking rankings such as stats on how many times a post was tweeted / shared on facebook / etc.
(2). You don't have to worry just about the domain migration, there's the data migration too. You have to export your content in a format the platform you currently use can generate, and the new platform you want to use has to be able to interpret this format. That, or you'll have to manually migrate.
About the domain migration, usually you would expect it to be relatively painless. Apart from taking between 2-3hrs to a couple days to the changes to DNS servers to propagate to all your visitors, so a few visitors might reach the new hosting and others reach the old one, this has to be properly taken into account before "pulling the plug".
Also, there are hosting providers that will do the migration for you either for free when you register with them, or by a moderate price.
And finally, if your domain was bought together with your hosting space, from the same provider, is not impossible (althought not to be expacted, but it is possible) that your hosting provider might not be 100% cooperative on the migration. In a extreme case, you could buy a domain and not be its actual owner, you should avoid this at all costs.
(3). One mistake many beginner bloggers / webmasters make is not being aware of the distinction between wordpress.com and wordpress.org -- the first is a blogspot-like blog network, the latter is the fully customizable, flexible, self-owned, self-hosted solution.