3150' is your height above the ground with QNH set. You know that at 13D you should be 3900' feet above msl (13 x 3(00)). The difference should equal the elevation.
All makes a lot of sense except that at 13 DME you should be
3900' above the ground, not AMSL. So at 13 DME you should be 4650' AMSL and 3900' above ground.
Otherwise, what happens at 2 DME?
Going by your method you'd be 600' AMSL (2 x 3(00)), and 50' below ground level. So going by your check method, you'd touchdown a little over 2 miles short of the runway.
That is all from me, we'll have to agree to disagree.