I've never met a liberal who's opposed to charter schools, for one.
Removing problem students helps the rest of the class, like you said, which is a good start. However, there needs to be a way to help the problem kids. Separate schools for children with behavioral problems have helped many kids, as long as the teachers are good, and that'sa very important part of it. I know this first hand. When I was younger, my mom worked at a school similar to that, where kids who have had behavioral or academic problems go. But instead of railing students for irresponsibility or treating them like "problem students," she listened to their problems and their concerns, and learned that many of these kids really were good kids, but they're bogged down by home life, the majority of the time. They're raised in hostile home environments, where they go through, neglect, abuse and abandonment. Frankly, if you've got problems like that, you're not gonna be very captivated by school, either. She's helped more students than she could've imagined in the two years she was there.
Which brings me full circle to the race problem: it really is about how they're raised. When you grow up in the ghetto or in projects where the most powerful people around you are gang leaders and crack dealers, and almost everyone around you has lived there for years, you're going to get the idea that crime and gangs are the only (or at least most efficient) way of becoming successful, even if it means you'll probably be dead or in jail by the time you're 20.
There's a phenomenal novel called "If I Grow Up" by Todd Strasser that follows this exact problem. You should check it out, because it captures the mindset of these children really well (and it's a great story, setting that aside).