I played a bit more and discovered that if you ONLY remove the "daylight" cron job and leave the others - providing you have the TZ fix in place, the stime script will get an updated (and correct) time from DLink each night. Without needing to bother with ntpd.
You just need to make sure you don't "save" the settings in the web interface, as this seems to write over the TZ fix.
Quite why the cron jobs still run even if the timeserver and daylight saving changes are disabled in the web admin is anyone's guess.