In the retail world, pretty much no employee wants to work Christmas Eve, for lot's of reasons. If the store is open the management has to staff it.
As your children grow up, you will sometimes need to be flexible to accomodate their work, school, activities and relationships. That's just how it is. Try to work around it, don't give him grief. Him going to work is the right thing to do.
You know, if NO ONE shopped, dined out, went to the movies on Christmas Eve, Christmas Day, Thanksgiving, this wouldn't be a problem. Stores and restaurants would close, or work with a thin skeleton crew, because no one would want to be there.
But as long as people want to take their family to eat at IHOP on the way to Grandma's, folks aren't done shopping on Christmas Eve (why does Dec 25 sneak up on us every year??) even shop and eat out on Christmas Day, there will be mothers, fathers, sons and daughters missing out on family traditions.
I've spent much of my young adult life working restaurants/retail during these holidays. And nothing burned me more than the whole fake-symapthy "sorry you have to work on Christmas" from customers too self-centered to realize if you were truely sorry, you'd have your pancakes at home on Christmas morning and not at IHOP. Seriously, did you know IHOP's busiest day is Christmas Day? And no it's not full from people who have no place to go, or non-Christmas people either
This year, I work Christmas Eve at Target. I'm a mom of 3 kiddos. I would love to have the entire day off, and my family would love to have me home. But traditions will get tweaked around, and we'll still have a lovely Christmas.
That said, you can bet your sweet booty that when I get Thanksgiving and Christmas days off, WE STAY HOME!!! It works both ways, if I don't want to work those days, I have no business asking someone else to cater to me at the stores/restaurants on those days too.
OP, since this upsets you, I hope you will think twice in the future before YOU shop at Wal-Mart on Christmas Eve, etc...