Well, TBH you probably sucked at it too...
An NDB is, as the name says, non-directional. There's nothing about it that can affect where you end up, provided you're receiving the signal properly. Now, the airplane may have been screwed up somehow and indicating incorrectly. Were you always offset the same 1/2 mile?
Of course, the other possibility is that everything was working fine and the approach is actually supposed to work that way. They can have a pretty big offset - 20 degrees, maybe? - before they get a letter instead of a runway number.