The likeliest reason is that the conditions are eliminating rows from aggregation. For example should either one of the TransDate conditions include equality, for example
where [TransDate] >= '3/1/2015 12:00:00 AM'
and [TransDate] < '4/1/2015 12:00:00 AM'
Another thing is that you're relying on the implicit date conversion. In worst case dates and months switch places so I'd suggest using
CONVERT(date, '3/1/2015', 101)
(or whatever is the correct format for you)
If neither of these reveal the reason, then checking the individual rows would be in place. Instead of grouping the data, select the source data, save it to excel and check if there is a difference.