Si no quieres problemas con fechas en SQL Server, puedes trabajar con formato "Chino" (creo que se llama así) y colocarlas en las sentencias SQL en formato "yyyymmdd" (sin separadores). SQL Server las interopreta perfectamente.
Algo así:
Código SQL
[-]
Select top 100 * from Tabla1 where Fecha < '20040407'
// 07 de Abril del 2004
De esta forma te puedes olvidar del formato de fecha.