you can use a FormCalc script in the date fields exit event to inform the user an delete the invalid field data.
if (date2Num($.formattedValue, "DD.MM.YYYY") lt Date()) then
if ($host.messageBox("You cannot select a date in the past", "invalid date", 0,0) eq 1) then
$.rawValue = ""
This works great. The pattern for the date field has to be set to whatever is in the script. I had my date field as MM/DD/YYYY and it would not work until I modified the formattedValue line to match the pattern for the field.