does it by chance have anything to do with the fact that blender uses different XYZ coordinates to directx
Yes, it does. In your importer you can transform all vertices by a matrix that translates vertices between coordinate systems.
Positions need to be rotated 90 degrees around the x-axis, and mirrored/scaled along the z-axis (depending on whether you use a left- or right handed coordinate system).
Matrix xfrm = MatrixRotationAxis(X_AXIS, PI * 0.5) * MatrixScaling(Vec3(1.0, 1.0, -1.0)).
You can then use that matrix to transform other vertex components (like normals) as well.
For UVs, '1.0f - V' will work.