This could be solved with detention at most and talking to the student about how she should have informed someone at school what she was doing. Also, why didn't the science teacher know what her project was about and speak to her about the possible dangers of mixing various chemicals?
Regardless, pressing criminal charges and expelling the student are both way overboard. At the very least take into account her intent and her past conduct at school. If she'd been a trouble maker and was planning on hurting someone, then yeah ok, expel her and press charges. But that clearly isn't the case.
This seems like another instance of a close minded zero tolerance policy where the actual extenuating circumstances of the situation haven't been taken into account.
I've said it before, but Zero Tolerance is bullshit.