Breakdown, Smakedown

So, the girl is out of control. She is contrary no matter what the subject. She screams, cries, or carries on about everything - even getting violent when she doesn't get her way.
Yesterday she punched me three times in the arm while I was driving because I was going to leave without getting anything because her behavior was so bad in the store - and I had to pull over in heavy traffic because of it.
I don't know what to do. I can't handle this much more - I don't know how to make it stop. First she wants me to home school her (we've been having trouble with her in school for 6 years now) then she wants to go back to school, but will not accept that she did anything wrong. When I don't agree with her totally she insults, swears, screams, belittles, and abuses me to try to get me to side with her, or just to punish me for not agreeing with her. 
But the simple answer is that she has to be doing something wrong in order to always get in trouble and has to change her attitude and actions in order to stop getting into trouble. She needs to understand that and will not. 
Three years, one month, one week to go...