A Black Watch kilt looks nice with many hose colours.

You could match the kilt with navy blue or forest green/bottle green hose, but in general I think it looks better to co-ordinate or contrast rather than match.

Lovat Blue, Lovat Green, sage green, tartan green, sky blue, ancient blue, red, Burgundy, claret, charcoal grey, mid-grey all look very nice with Black Watch.

What I personally would avoid is white, black, and offwhite/cream. Why? Because they're sort of boring to me.

There's absolutely no "rule" about matching shirt and hose. While it can look good to do that, it can also look good not to do that. I personally dislike the white shirt + white hose look.