if (as per books online) the replace function returns a varchar, why do these commands give different results?

print Replace(Convert(varchar(30),cast('2010-01-01 00:00:00' as datetime) , 120), ' 00:00:00','') + '.'
print Replace(Convert(varchar(30),cast('2010-01-01 00:00:00' as datetime) , 120), '00:00:00','') + '.'