I would assume it is due, as you suspect, to the Date field comparing to a Date/Time data construct. You could try $DATE$ instead of $TIMESTAMP$. So:
$DATE$ < 'Schedule End Date'
If not, create a hidden field, date/time, into which you put the value of the 'Schedule End Date' field. It should go in as Midnight (so, 2018/01/10 12:00:00 AM) Then use the escalation with TIMESTAMP against that.