I found the issue in DMT, I think. On line 64 of StarlingConverter, it calls Texture.fromBitmapData(), but it does not set the texture's scale at all. It seems that there is no way for you to specify which scale DMT should use when creating textures.
That means that all textures created by DMT are scale 1. If Starling's contentScaleFactor is > 1, it will scale the texture up and the texture will look blurry. If you could tell DMT that the vector should be scaled up, and its texture's scale should be 2 instead of 1, it could create a texture that reports the correct size in stage coordinates, but renders with full detail on the screen.
Basically, DMT should have been designed to allow you to do something like this (pseudo-code):
_dmtBasic.scale = 2;
_dmtBasic.addItemToRaster(vector);
Then, behind the scenes, DMT would do this (pseudo-code again):
vector.scaleX = scale; //2, the value passed in above
vector.scaleY = scale;
var bitmapData:BitmapData = new BitmapData(vector.width, vector.height);
bitmapData.draw(vector);
//Texture.fromBitmapData() scale parameter is 2 instead of the default 1
var texture:Texture = Texture.fromBitmapData(bitmapData, false, false, scale);
Then, it would be doing the exact same thing that AssetManager does. The texture would be the right size in stage coordinates for layout, but it would also render with full detail.