As one doctor wrote in a piece posted elsewhere "the days of running a hospital with nuns and bake sales are over". Sad commentary on these times, and many may not agree, but healthcare is a business, one many local governments are finding they cannot afford.
Hospitals not only cost vast sums to run well, but carry a huge liability for the local government (really the taxpayers), when something goes wrong, or at least if a judge/jury thinks it did.
Then there is the fact that in most areas persons with a choice, would rather die than go to a charity or public hospital. It is these persons, often with decent if not generous insurance plans a hospital needs to attract to pay bills. What often happens with public hospitals is they mainly have a population of those either whom cannot pay, have inadequate insurance or rely totally on Medicare/Medicaid. Either way it usually leads to the place bleeding red ink. The recent closures of both Saint Vincent's and North General in Manhattan shows this.
The other 900lb gorilla in the room is staffing. While some public hospitals due to their reputation (Bellevue in NYC for instance), may have an easier time attracting and retaining top quality medical and nursing staff, this is not always true for all. For reasons ranging from wages/benefits, clientele, location, and dare one say it, prejudices, many public hospitals have a very hard time finding and keeping good staff. While many new doctors and nurses may welcome a chance to train or at least spend some time at such a facility, most don't see themselves spending their careers there.