I would guess Date.equals() is returning false - can you check if this is the case? In which case, please file an issue in Seam JIRA and I can see if we can improve this.
Not sure where the equals methods are being called.
Is it in the <s:selectItems/> or in the <h:selectOneMenu/> component?
Pointer to where I should put a break point needed.
The validate() method on UISelectOne IIRC.
Problem was a user error, doh!
Turns out the the date is stored like this in the <option/> tag:
So when the Date object was recreated it didn't have the right values for hour etc.
Adding type="both" to the <f:convertDateTime/> seems to have sorted the issue and the full date is put in the value attribute.