Fala Danilo, tem algumas maneiras de você fazer isso.
1. Se você não quer que o usuário altere o valor, desabilite o text. Ex. txtMinhaData.Enabled = False;
2. Você pode usar o TryPase, caso a data seja inválida ele devolverá uma data padrão. Ex. DateTime.TryParse("12/13/2009", out new DateTime(2008,12,05));
3. Você pode fazer um Try Catch e caso gere uma exception você pode tratar.
Abs
Reginaldo Martins Francisco
Consultoria em Desenvolvimento de Sistemas e Internet
www.inforeg.com.br