Para ser independiente de la configuración de idioma y configuración regional, debe usar el ISO 8601 YYYYMMDD
format - esto funcionará en cualquier sistema SQL Server con cualquier idioma y configuración regional vigente:
SELECT
CAST(
CAST(year AS VARCHAR(4)) +
RIGHT('0' + CAST(month AS VARCHAR(2)), 2) +
RIGHT('0' + CAST(day AS VARCHAR(2)), 2)
AS DATETIME)