I created a bug to eventually have a server side fix for this. [1]
But for the immediate time came up with this javascript:
https://github.com/sgithens/openmrs-forms/blob/master/obsdatetime.js
So essentially you put another date widget on the page with an ID,
and give everything else ID's as well.
During the init, it checks for any error messages (in case you just
submitted an invalid form), and if those exist copies the span.error
dom tag after the new date widget. Then it checks for any existing
date submissions (in case you're ediding an existing encounter), and
populates the new disconnected date widget.
Then it sets up event observers to sync all the obs.datetime widgets
with the disconnected one whenever a combo box is checked, or you
change the new date widget. Also deleting the date in the
obs.datetime widget if you uncheck the checkbox.
-s
[1]
https://tickets.openmrs.org/browse/HTML-359