Do you have a co unselor available for a few sessions to work through this?
Young girls going through puberty can be unbelievably tough to deal with.

Here's a suggestion that might help to change the way things go down. If you can find a moment when things are going well, engage her in a conversation about it. Tell her that you would like to handle things differently and when things escalate to a high area you need to be able to take a time out and deal with it when both your emotions are in check. Create a code word that means time out to both of you. Define what that will be. No more talking for the moment, each retreat to you own space, whatever.
This will give you the time to revamp, remind yourself that it isn't the end of the world, and that you are the parent and you don't have to resort to that with her. Also during the talk, tell her that unfortunately you are going to make the important decisions for the next several years. She doesn't have to like it but she does have to be respectful, and that you will respect her as well.
12 years old is ridiculously young to date. Go ahead and tell her how dating will work in her world. I know everyone does it a little differently. It doesn't sound like she's interested in dating 12 year old boys. Don't push her away, she's gonna need you.
I remember begging to date at 12. I was serious and my parents laughed! 15 was the rule then. I had a crush on a boy 5 years older, who was kind to me but wouldn't have been interested in a 12 year old. I was 15 and 2 months before I was officially asked out on a real date anyway!
Good luck and God help you, I'm so glad I've got a boy to deal with this time.