The old code WOULD have returned false (via the CustomBooleanConverter) and DateTime.MinValue (via an odd path pointed out by failing unit tests). I had to special-case this to retain that (non-intuitive) behavior or it would have been a breaking change.