Christmas is on December 25. It is not on December 25 UTC, or any other particular time zone.
Zoneless time is not a mistake. Using it when you meant to use a zoned time is.
Really, though, this is a recurring lesson in software engineering: don't be in a rush to make something a default just because it's "obvious"; explicit is better than implicit. Strings are another example; we've treated them as arrays of characters for so long that it's still a common default semantics for indexing a string, except now what you often get instead is UTF-8 or UTF-16 code units rather than actual code points. All of which is likely not what you actually need - but what you do need depends so much on the task that it should always be explicit.
Python does not. It’s all one object and I think that was a terrible idea.