Here's the bottom line, all social issues aside:
A Public School takes public money, is governed by people who are locally elected. They spend public money to provide the best education possible for children in the best environment they can, (in theory and often in practice.)
A Charter School in some places takes public money in others does not. They are not always governed by locally elected people. Their job is to educate children and turn a profit, they are not a non-profit organization, like a Public School.
So, when it comes to a choice between being profitable or going down the road to being non-profitable, and what level of education they will provide their children...which will win out?
Primary Education shouldn't be based on turning a profit...ever. It's always about making choices that are first and foremost, about educating children. Sometimes it's constrained by the funds you have, but the funds are not the focus.
In the history of US Primary Education, there has only been one, Privately run "public school system" that's both provided a profit and shown improved student achievement....for one fiscal quarter. After that, the improved student achievement became flat, then fell off. If privately run systems worked, turned a profit and created high student achievement, there would be a large amount of data out there about it. There isn't any. None. Public Schools would be hard pressed to fight real data. But, there isn't any, so they're fighting deep pockets of special interest groups who want to run schools and either turn a profit, or take public money and turn a profit, without necessarily providing high student achievement.
Do all Charters want to do that? No. Some have a great desire to create high student achievement. But what has and will drag them down is that they also have to create profit, because they're a business, not a non-profit organization.