comparind dates

This is returning false because the same date is returned by a call to Date.new which defaults to 0. ( Mon, 01 Jan -4712 )

Instead you could use
Date.today > ( Date.today - 1 ) # => true
Date.civil( 2007, 12, 31 ) > Date.civil( 2007, 12, 30 ) # => true

Hope that helps.

Cheers