When using the VALID_DATE() command, the command would interpet blank values as a valid date.
Investigation
For an example of this behavior, from within a script object:
:set &var# = ""
:set &ret# = valid_date(&var#)
:print &ret#
The following code should set &ret# to "N", because "" is not a valid date. However, &ret# is set to "Y".