You are mixing different things, OP.
It is perfectly ok to be pissed off that you have to work christmas!
It is even perfectly ok to whinge about it
but probably not for months and months and months - but you just said she had complained today. This one time. She's allowed to complain about something!
It is not ok to think that you have a right to not work christmas or to demand that you don't work it. If she is demanding that the rota is changed in her favour then she is being unreasonable.
But - you have to understand - it is different when you have children. It just is. Christmas takes on a magical element that is simply missing from christmas with your parents, or your mates or your dear old auntie aggie. Christmas is fun, it's great, it's lovely to get together - but it's only magical with your children.
And there is no way of saying this that won't sound terribly patronising, and - tbh - I want to slap myself in the face for saying it .... you will understand when you have children.
That is not the same as saying someone has the right to never work over christmas if they have children. If she's put down for christmas and there is nobody who is happy to swap with her, then that's unfortunate but she'll just have to deal with it.
My husband was on a 24hr shift the first christmas after we had a child.
He went on christmas eve afternoon and did the pm shift, did the sleepover, did the morning shift (that's quite a common shift in the field he was then in) then was home on christmas day afternoon.
I was supposed to wait for him to get home to help our PFB open his gifts.
Supposed to 
He came home to find it all over and PFB eating his way through a huge pile of wrapping paper 