Changing this issue to a docs bug. The documentation says that the INTEGER function can be applied to dates and times. However, if you attempt to do this, you will get a casting error, at least as far back as 10.1.
The documentation claims that INTEGER can be applied to numbers, strings, and date/times. The documentation then goes on to explain what you should expect to see if you apply INTEGER to numbers and strings. However, the documentation does not explain what should happen if you apply INTEGER to date/times.
I believe that someone overzealously claimed that INTEGER can be applied to date/times and then didn't bother to verify what actually happens.
If this is an important issue, then please file a separate enhancement request for applying INTEGER to date/time values. Please specify what behavior should be seen. For instance, should the INTEGER value of a DATE be the number of milliseconds or the number of days from the start of the UNIX epoch...or something else?