This condition
(Date = GETDATE())
will only match if the Date column has a value which is exactly the same down to the millisecond as the current time.
When I run SELECT getdate() right now, I see this:
But it will only take 3-4 milliseconds before that value changes.
Assuming that the column Date only has a date and no time portion, you need to use:
Date = CAST(getdate() AS date)
By the way, that TOP(100) PERCENT in your query is fairly meaningless.
By the way2, you had posted an Answer. Answers are for answers to the original question. You would only post an Answer if you find the solution yourself. I have converted you Answer to a comment.