InfoPath dates are formatted differently from SharePoint column dates, and now() returns a date and a time, not just a date.
The format you should be using is 2013-04-21T09:19:30 where the date is before the T and the time is after.
This will allow you to use the string functions to compare whether one date is greater than another.
Please verify the format for your SharePoint column. Just drag and drop the field into your view and see what it shows. If it isn't in the above format, you'll have to convert it using concat and substring functions.