You need to make sure you use the same format as in your app. And remember the display format can be different than the data format on the field level. So look into your datamodel what format your using, and use the same.
Otherwise use the date as a number when it passed. And make sure that the date field has no timestamp in it.
If you want to be sure then format your date like: date(floor(datefield),"d/m/yyyy") as date then your code should work.
But what I recommend you to use in that specific case is selectMatch instead (selectMatch method ‒ Qlik Sense), this method will automatically try to match the date.
Regarding keeping current selections between mashup pages, you can find a good thread here: Re: Keep current selection between mashup page
I hope this helps,