Typically date/time functions are tricky in QV as sometimes the date comes out in d/m/y format, other times in UTC format (e.g. 45000).
Look in your variable overview in the front end if all your values come out the way they should. (Variable overview is CTRL+ATL+V). I think the today might be coming out in UTC format, hence you would need a date(today()) to format it in the3 right way.
Double check the values in the variable overview. The rest of your statement looks as it should be.
I guess the Date function is still keeping the time information, and when you call today() you have not the time, only the date. Use the num function to do the comparaison, and trace function to see what happen, then take the floor part of tha date, something like :
let xyz = floor(num(Date(FileTime('your file'))));
let abc = num(today());
if xyz = abc then
trace not ok;