Whenever there is a problem between us and MIL, DH is the one who handles it. If there is a problem with us and my mom, I handle it. Since he stands behind you and is giving you permission to say something, you need to say something. She is her granddaughter, but she is YOUR daughter, and there are boundaries that shouldn't ever be crossed concerning the welfare of your child, and deciding when to get her a haircut is YOUR job, not hers.
First, I would say something to soften the blow like "the girls love it when you are here, and you are so great at helping out around the house, etc...; however...." You could just tell her, not just that it was a bad haircut, but that you feel like she is overstepping her boundaries when she takes it upon herself to do things like that. If she wanted to go with you to get her hair cut, if she needed it, that is fine. You are her mother, and because you are her mother it is your right to have a say in what is allowed as far as you kids are concerned, not hers. I understand that she only sees them few times a year, but that time needs to be enjoyable for everyone. If she goes on about how she never gets to see them, yada yada, I would probably also let her know that she is a guest in your house and you feel like she is taking advantage of your kindness when she does this, and because I can be mean I would let her know she could see them alot less, depending on her attitude. If it continues... honestly our parents have lost some priviledges because of things that we feel strongly about weren't honored and respected. Being a grandparent isn't a right, but a priviledge. (I would be lying if I didn't say that there was some pleasure in repeating the very things that my parents said to me!
) There are some things that Grandparents are allowed to do. They can spoil and give all the tooth-rotting candy that they want, buy all the toys that they want. But there are certain things shouldn't be permitted.
If your husband wants to say something to her, let him. Their relationship dynamics are something that you cannot control or interfere in. I understand you wanting to keep the peace, though. It is not fun at all. If he does say something before you get a chance, and she comes to you it could be your opportunity to let her know that you agree with your husband. Then she will see that you are united and that she really needs to stop.
Good luck!
Missy
ETA, I just reread my post, and it sounded a little rude. I would be very polite yet firm at first, and then get more intense if she doesn't respect you.