Honestly, the main issue with Xmas shopping is people tend to fall into category a or b.
a) people who have a very particular Christmas menu and want x, y and z every year
b) people who want a Christmas dinner but are willing to be flexible regarding what they have
You cannot be person a and wait until the last minute to do your shopping. You can be person b.
This is when the rudeness arises and staff end up getting berated- the person is annoyed but instead of taking on the responsibility for missing out (didn’t shop earlier, didn’t order in advance etc) they take it out on someone who has no control over what comes into store and when it sells out.
Also, most Christmas line volumes are decided by HO- for most stores there is very little they can order in themselves. There’s also shortages (not being delivered despite being on the order invoice, so errors occurring in the warehouse), manufacturing issues so some lines might not be available at all, or available in lower quantities, order delays due to driver sickness etc.
It’s also generally quite difficult to accurately predict stock levels of every line because all you can really base it on is last year’s sales. Retailers want a clean sell through by the end of Christmas Eve, they don’t want hundreds of turkeys sat to be reduced on Boxing Day.
It’s a difficult balance to get right.