Here's a curve ball for you:
I once had the starter doing the opposite problem, it wouldnt turn off once activated, it was a corroded spring within the starter relay - quite a simple fix (I even had a random spring on the shelf that fitted!) - so, clean up, new spring and all good again.