So, in the XML, InfoPath will be storing the value. DBXL saves the XML field value to the database - in other words, DBXL is working off the XML.
When you open the XML from SharePoint, since the drop down control is configured with a display and a value, you see the display in the form - that is all based on the form template itself - it can find a display match for your value, thus displays it.
Unfortunately, the only way to capture those display values in SQL will be to also store them in the form and write them to the DB. You can use a calculated default value for the new field so that when the XML is opened or the drop down is changed, the calculated default will update to whatever the correct display is for the selected value - let me know if that doesn't make sense or you need more info, okay?