Ding Dong “ good morning colleague ( while handing over child and bag of stuff ) thanks so much for looking after child so I can cover the shift that you knew I wouldn’t be able to do and that’s why i booked it off in my request - back later”
fuck off with that - it is not up to OPs colleague, no matter how dire OP's needs are, to cover her childcare. Not at all.
it is up to management to make the rota. OP is onto a good thing here already not getting work on weekends, I'm sure this plays a part in the colleague's decision making about working or not.
I know lots of people who work in industries (like hospitality and care) who are absolutely not allowed holidays over Christmas, everyone gets rostered on at some point, and anyone who says "yes yes yes" then pulls a "sickie" doesn't last long at all after that, particularly when they need favours. It is too late now but OP and colleague needed to have made contingency plans back when the boss said the Christmas das shifts would be decided in November. As a working parent you have to have plans B through at least G for times like this. It is hard, and especially in OPs case with the absent father and little family support, it is really hard and i have a lot of sympathy.
OP is digging her heels in (for reasons), which is fair enough. OP's colleague is also digging her heels in (presumably she has reasons which may well be "because i want Christmas off" which is also valid)
This needs to be pushed back on management. But i would caution against suddenly announcing that you're unable to turn up on the day or close to it, because that's a bit of a dick move. Management must sort this. And sort it soon.