I had the same problem, but it was my own mother, not my mother in law. She’s passed away now and the children are all grown up, but I remember the fraught tension of those Christmas Days.
For me, I solved the problem by making Christmas Eve my main focus. This became our true family time. We didn’t open presents, but we had all the Christmas foods, some games, drinks and a really relaxed night. I still treasure those memories.
This meant, on Christmas Day, I let my mum almost do whatever the hell she wanted to. I took a bit of a ‘let her’ attitude and just sort of resigned myself to it being what it was. Put on a decent nightie and still opened presents with the kids in our jammies and had a relaxed breakfast. Then got dressed and put on makeup. There may have even been the odd time I went back to bed for a little while and let her play with the kids and the toys.
We did still have a lovely Christmas lunch, but some was reheated from the night before.
If you really get to the point that you can’t get her to turn up later, put DH in charge of breakfast and go with relaxed. Surrender to it and force her to take you as you are.
In defence of her and my mum, seeing the kids open presents is pretty special. You could always let them open something from you on Christmas Eve. Find a solution that works for you.