Without donations OpenStreetMap would also lose money. But obviously people (and companies) are much more willing to donate to a project when it's a charity/non-profit, instead of the product of one of the biggest companies in the world.
Maybe people are more willing to donate to a non-profit, but I am not so sure the same goes for companies. Today companies have to pay a license fee if they are using Google maps in their services. A non-profit can of course continue with licensing the service, but if they make that optional, 99% of the companies would stop paying.
Assuming maps still loses a good chunk of money, how would it survive as a charity or non-profit? Where would the money come from? Who would donate to the charity?