In my old team we had things get wildly out of hand and HRLegal got involved. The entire team suffered because of a manager who didn't just step up and handle it like a problem between adults.
In my current team I am at/near the top of the social pecking order and have a very good reputation for looking out for juniors in the lab (going to bat w/ management for them but not telling who I'm batting for, etc.) and a good reputation with management for telling things as they are and having people trust me. This (amazingly to me) has gotten me some measure of respect from both sides, even when things get heated (we had a reorg a while back that turned very sour).
We had a repeat incident that was very nearly the same as what happened in my old group, but I told my manager what was happening, and asked him to give me a shot at handling it. I pulled the two into a conference room (based on the authority of the managers e-mail to them both) and dressed them both down, her for wearing clothes that are against the dress code and sure to attract attention, and him for utterly failing to be a gentleman that when a girl wears enticing clothes and lets you know it isn't you she wants it's time to back off. I reminded both of them that they are adults and to act it, and that neither was guiltless in the whole mess. Problem solved. Year and a half later, still no issues; she's dressed at least a little closer to the dress code, and he's polite, but non pursuing to her.
I don't think informal warning straight to dismissal is the right policy, there should be two more steps in between: formal warning && second warning + suspension.
Just realized I mis-parsed that part of your post, but there's the two steps I'd put there.
-nB