Ich hab da einige Anmerkungen, die den Fehler warscheinlich lösen.
Als erstes solltest Du Dein Datum besser als timestamp speichern, weil man damit viel einfacher rechnen kann. Formatierte Ausgaben kannst Du ja ganz leicht mit timestamps machen.
Desweiteren bin ich mir nicht 100%ig sicher, ob MySQL nach solch einem Datum richtig sortieren kann. Die nächste Frage wäre warum Du diese nicht nach der ID ordnest, sofern diese unique ist.
$checkrow scheint für mich ebenfalls fehlerhaft zu sein, wenn Du schon mysqli nutzt, dann bitte richtig.
und die While-schleife zu:
Hast Du den SQL Befehl mal direkt in phpmyadmin ausgeführt? - Wenn ja welches Ergebnis?