Hola Emilio_82, yo también creo que sería mejor que utilizaras un DateTimePicker, asi te evitas de dolores de cabeza, para controlar que en un MaskEdit te han introducido una fecha correcta puedes hacer lo siguiente:
Código Delphi
[-]
var
Fecha : TDateTime;
begin
if TryStrToDate(MaskEdit1.Text, Fecha) then
showmessage('La fecha es correcta')
else
showmessage('La fecha es incorrecta');
Saluditos