I may have been a "short timer"-4 years U.S. Army. I didn't think of anyone as being SUPERIOR to me only SENIOR. One thing that was stressed from the Commanding General all the way down to the lowest Private was that respect is earned. You have to give it to get it. I think the Major may have forgotten that when he was talking to the OP.

Scotcop said he had gotten permission from the store manager weeks in advance which would have given the shift manager ample oportunity to voice his oposition. He also said that his coworkers knew that he wears a kilt and were okay with it and that they knew he planned to wear the kilt. Isn't the shift manager a co-worker? Did he know that Scotcop wears a kilt and was planing to wear it to work? If so, why didn't he say something sooner instead of waiting until AFTER he had clocked in for his work shift to make him go home to change causing to have to clock out thereby losing time and money.
I presume that because it is a minimum wage job and one has to clock in that it pays by the hour.

In the Major's "military mind", he may have been offended by Scotcop bypassing him in the "chain of command" and going over his head to the store manager. If that's the case, he handled it the wrong way.

If the shift manager's issue was with the fact that Scotcop was not wearing the proscribed "uniform" of "white above the waist and black below" maybe he should have worn a white button down shirt with a black Shadow Tartan kilt and matching tie from SWK.

In any case, this incident should be reported to upper management before he decides to "pull rank" with someone else who won't have the patience of a saint and won't hesitate to tell him where to go and what to do with himself when he gets there.