> irb(main):001:0> t = Time.now; t - t.sec - 60 * t.min - 3600 * t.hour
> => Wed Mar 15 00:00:00 CET 2006

How about:

irb(main):001:0> t = Time.now; Time.local(t.year,t.month,t.day)
=> Wed Mar 15 00:00:00 Central Standard Time 2006