The cost of hosting Christmas isn't one roast dinner. It's also starters, puddings, drinks, snacks, perhaps breakfast(s) and the third meal(s) if people are staying over. Coffees and chocolates and wine and spirits and biscuits and cheese and crackers and, and....
The cost of living crisis is real, and I think many medium and even high earners are struggling with the cost of hosting Christmas, let alone lower earners. I think if it's the same person who always hosts, then it's very sensible to share the cost, and if that £30 is for two adults plus kids then I would bet more than that that it isn't covering the cost of everything you will consume.
If you haven't had to buy a turkey and all of the things needed for a 3+ course Christmas meal plus drinks and snacks for X amount of people in the last few years, you really are in for a bit of a shock. I used to do a roast dinner every week, but the cost of a chicken has become so prohibitively expensive that roast dinners are now only for special occasion in my household.
As for her liking everything "Just So..." well, yes. It's a special occasion, and I'd feel the same as a host. Partly because when multiple people get involved in bringing different dishes it gets overly complicated and there's so much room for error. And partly because if I'm the one cleaning and tidying before you come and after you go, and cooking for and serving you all, all day and evening (and maybe multiple days), do you know what, I'm darn well going to buy the specific types of cheese and chocolates that I particularly like! 😁