Você precisa CONVERTER '20100101' com um estilo.
Então, tente isso:
...WHEN [Date] > CONVERT(datetime, '20100101', 112)....
A análise de data da string pode não ser confiável, pois Eu já respondi antes (principalmente nos comentários)
Editar:
Eu não diria que é um bug, mas o SQL Server pedindo 100% de esclarecimento. yyyymmdd não é ISO e a análise do SQL Server yyyy-mm-dd não é confiável (veja meu link de resposta)