JuJu
re your comment:-
"She is horrible, but she can have her nice days, and she's their gran.
Idk. I'm so confused. Also, as someone said, what about Christmas?"
Sod Christmas with her frankly and after all its only two days. Be happy with your own family unit and continue to make your own traditions. The best thing here is to live well. She is not a worthy grandmother to your children and she was also a crap parent to your DH when he was growing up. He knows all too well what she is like. Your children won't mention their nan particularly if you do not keep on bringing up the subject. As another poster rightly put she is a disgrace.
Would you have tolerated this behaviour from a friend?. You are nice and empathetic but she has taken your kindnesses here and has shit all over it. People like his mother see kindness as a weakness to exploit. You also cannot apply the "normal" rules of familial relations to someone like his mother, those do not apply here. Do read "Toxic Inlaws" written by Susan Forward; it could help you a lot here. Deal also with your own fear, obligation and guilt here too.
Think about this some more; when has she ever been nice to your kids. From what I have read she has patently ignored them throughout and only wants to give other people the idea that she is a nice grandmother.
As for her being nice sometimes, abusive people also do the nice/nasty cycle very well and that is a continuous one.
Its also NOT your fault that she is the ways she is; her own family of origin did that to her.