Não faça isso! Não use strings em vez de datas e não use um formato de data ou data/hora específico da cultura, é uma receita para o desastre.
O SQL Server não tem um "formato de data", apenas os formatos que ele usa para converter datas de e para strings. Um deles é o padrão, controlado pelo agrupamento do servidor. Você não pode assumir nem deve depender de um agrupamento específico, portanto, evite conversões sempre que possível. Além disso, passar um valor de string pode impedir que o SQL Server use índices em colunas de data porque teria que converter a string para o tipo de coluna subjacente.
É muito mais fácil e seguro passar datas como variáveis ou parâmetros com tipo de data. Você evita toda a confusão de conversão dessa maneira, de e para e evita ataques de injeção de SQL.
Não há razão para passar strings em vez de datas para o servidor. Todos os clientes SQL Server (incluindo ADO.NET) permitem que você execute consultas parametrizadas. ORMs como NHibernate e Entity Framework também geram consultas parametrizadas para colunas com tipo de data.
Sempre que você precisar criar um literal de string, use um dos formatos invariáveis como
20140913
ou 2012-11-07T18:26:20
Você pode ler mais sobre isso em Escrevendo declarações T-SQL internacionais