I assume you are loading XML into the db, not the other way around.
When opening & loading an XML document into the db, I declare my dateime field as say varchar(20), then load the result into a temp table (lettting it create its own schema). I then insert the results of my temp table into my created table, which has the datetime field declared as a datetime. the conversion works fine, as long as I ensure that the format of my original datetime is accurate.