You cannot use column names on the fly in an SQL WHERE clause. (You can in the sentence ORDER BY.) You must subquery it or repeat the expression
SELECT * FROM (
SELECT *, DATEADD(d, 1 ,dStartDateTime) dCloseDate
FROM EventItem
) SUBQ
WHERE dCloseDate > '1990-01-01 07:00:00.000'
-or -
SELECT *, DATEADD(d, 1 ,dStartDateTime) dCloseDate
FROM EventItem
WHERE DATEADD(d, 1 ,dStartDateTime) > '1990-01-01 07:00:00.000'
Why shouldn't you do this?
, dStartDateTime, . , dStartDateTime (datetime).
SELECT *, DATEADD(d, 1 ,dStartDateTime) dCloseDate
FROM EventItem
WHERE dStartDateTime > DATEADD(d, -1 ,'1990-01-01 07:00:00.000')