I would think the easiest solution to this problem is to build a garter that's integral with the sheath. You would need to strap it around your leg before you put your hose on. And if you're THAT worried about it, you can even put two of them (one at the bottom and one at the top of the sheath). I would use a very thin leather or even elastic so it won't show a profile through your hose.

And the sheath probably needs to be formed good and snug to the shape of the sgian dubh's blade so it can't slip out unless you're intentionally pulling it along its axis.

If this won't keep it in place, nothing will.