Mental issues or no... that was still a bad scene.
I'm afraid that if it had been me, I'd have gotten fired due to telling him to check up his backside for it and walked off. If I had been a customer and heard the roaring, I'd have probably said the same thing.
Yeah, this would have been me. And once he got his cane from his wife, I'd have asked for an apology. Truthfully I'm so sick of my job right now that I don't care much what happens to me, and I get tired of customers like this.