the client validation on the birthdate element is conflicting.
change:
<input id="Registration_group_Birthdate" name="Registration_group_Birthdate" type="text" value="<?php echo((isset($_GET["invalid"])?ValidatedField("registration","Registration_group_Birthdate"):"")); ?>" class="formTextfield_Medium" tabindex="3" onblur="WAValidateDT(document.getElementById('Registration_Basic_Default').Registration_group_Birthdate,'',true,/.*/,'mm/dd/yyyy','','',false,/.*/,'','','',document.getElementById('Registration_Basic_Default').Registration_group_Birthdate,0,true);hideServerError('Registration_group_Birthdate_ServerError')" />
to:
<input id="Registration_group_Birthdate" name="Registration_group_Birthdate" type="text" value="<?php echo((isset($_GET["invalid"])?ValidatedField("registration","Registration_group_Birthdate"):"")); ?>" class="formTextfield_Medium" tabindex="3" onblur="hideServerError('Registration_group_Birthdate_ServerError')" />
yes, the format "Y-m-d" is correct, that is the php date() functions format string for yyyy-mm-dd which is the format the database will be expecting.