I found the solution here: ASP.NET MVC3 - DateTime format and it had to do with globalization.
My locale is en-CA
and
System.Globalization.CultureInfo.CurrentCulture.DateTimeFormat.ShortDatePattern
gives "dd/MM/yyyy"
.
So in Web.config
under <system.web>
I included
<globalization uiCulture="en-US" culture="en-US"/>
So the DateTime format is working for me now.
P.S.
A safe way to pass dates without worrying about specific culture is to use ISO 8601 format - yyyy-MM-dd
(or yyyy/MM/dd
which also works).