@pelson Yes, and it's a good point.
I even started writing a comment that I should probably back off, as this is temporary code and we'd like to get this in by tomorrow.

However, it will be months before this code is removed. I needed to understand what would happen if any new type of datetime object was introduced in the meantime. I also wanted to understand if a wrapper would give significant improvement with little effort.

As it turns out, @cpelley has looked into this by actually implementing it and seems delighted, so let's see what gets pushed...