För DATEDIFF
om det första objektet är ett mindre datum än det andra objektet returnerar det ett negativt tal (som sådant kan aldrig vara större än 16) och inte ett positivt. Så vänd dem, du vill ha det senare datumet som första argument:
... WHERE DATEDIFF( CURDATE(), Due_Date ) > 15