Entiendo que el problema que tienes es que no sabes como comparar 2 fechas. Nada mas fácil, comparalas como si se tratase de dos números, porque en realidad lo son
Es decir, donde tienes esto:
Código Delphi
[-]
if AnsiCompareText(Cells[SortCol,i], Cells[SortCol,j]) < 0 then
Usa esto otro:
Código Delphi
[-]
if StrToDate(Cells[SortCol,i]) < StrToDate(Cells[SortCol,j])) then