When I put your code in the attached Access 2000 DB and ran the query, it did not throw up any error.
I also found that this line could work with or without the CDate() function:-
If (CDate(varDates) = dtmCurrent) Then blmIsHoliday = True
If varDates = dtmCurrent Then blmIsHoliday = True
The code was fast. On the WinMe system I used, it took less than two seconds to return the query results for 1500+ records.