oh, yea, one more lil bug...
In D2DTexturedOnDDS there are the lines:
FD2DTexture.Texture[I].FloatX2 := SrcX * (SubPatternRect.Right - 1);
FD2DTexture.Texture[I].FloatY2 := SrcY * (SubPatternRect.Bottom - 1);

Those -1s are incorrect...
(At least it clearly seemed so with TDirectDrawSurface's DrawAddCol... After correcting it, I haven't seen anything being drawn badly, so I assume it was incorrect)