Without looking at any code, I'd *guess* it has something to do with PHP's automatic type-conversion. It adds extra rules to constants to prevent any modifications, and then throw an error, whereas such type protection does not have to be done anywhere else.
One would think it could be updated to address that issue by now, but...as Brandon just said, we're talking microseconds, and it'd probably be a core change that would have resounding effects on the rest of the core code as well.
...again, I'm just talking out of my butt...but it's a possibility I suppose.