The main reason is that they have marketing of a corporate entity behind them and someone to sign a contract with.
I've seen many times - company switching from free, open-source, distributed solution to a worse, closed-source, coporate-backed solution just so they have someone to sign a contract with.
First time it was moving from self-hosted Jabber to MSN Messanger (is sucked, worked less reliably than self-hosted jabber, didn't worked on Linux, and was probably way more expansive in the long run). Then it was moving from self-hosted wikis to some B2B solution. Then it was self-hosted git to corporate github or sth similar.
I understand the theory behind outsourcing these things, especially if you're just starting. But if you already have the OS solution deployed and working - why switch?
The first startup I worked for had 1 IT guy among 12 people, and everything was in-house, including servers. The second grew to 50 people and did not ever employ an IT guy for internal work - most stuff was run on SaaS and the total cost was less than an IT guy salary. Any admin was done by taking engineering time, and no-one wanted to divert that away from product to do in-house stuff. Because when you're taking time away from product, it's not just the salary but the opportunity cost, because any investment in product is supposed to return a multiple.
And you know what would be even cheaper (in the medium/long term) than the IT in-house or outsourcing to commercial SaaS? If the company took 10-20% of their budget to sponsor the development of FOSS alternatives.