За DATEDIFF
ако първият елемент е с по-малка дата от втория елемент, тогава той връща отрицателно число (като такова никога не може да бъде по-голямо от 16), а не положително. Така че, обърнете ги, искате по-късната дата като първи аргумент:
... WHERE DATEDIFF( CURDATE(), Due_Date ) > 15