Actually I just tried writing an EnhancedUserType, and it failed my most trivial possible tests:
https://github.com/hibernate/hibernate-orm/pull/7077