There are so many misconceptions on both sides of this. First, open source is not free. You do need people to install and maintain it and maybe customize it. Some open source projects have less documentation than others.
On the other hand, what's worse is when you pay hundreds of thousands of dollars for a large software product only to then have to pay more and more and more and more to buy additional modules, customizations, training, support, upgrades....
At least if you have some good programmers on staff you can fix the open source yourself.
Migrating a large database or content management system to another is always a hassle. That has nothing to do with whether its open source or not.