Creo que sqlite no tiene DATES por lo que lo ordena en formato String
La verdad desconozco como se podría hacer se me ocurren dos maneras quizá exista algo más fácil.
La primera parsea la fecha de la query poniendola en juliano o bien YYYYMMDD como number,
Otra opción es ordenarlo en java si lo que retornas es un arraylist puedes ordenarlo implementando Comparator