Проблема однозначно в DLL. Если все собрано верно, то скорее всего, не выполняется какая-то необходимая инициализация. В документации XDS ничего не сказано относительно необходимости вызывать какую-то инициализационную функцию при начале использования DLL? (хотя есть стандартный способ для DLL инициализироваться при загрузке, но у него вроде бы есть некие недостатки, из-за которых они могли предпочесть явный вызов).
А из других языков/сред использовать DLL пробовали? Например, из Дельфы?