By the definition of "punish" that you are implicitly using, private businesses in America used to be able to punish people for anything ("we reserve the right to refuse service to anybody"). Now there are certain things they cannot punish people for (e.g. being black). Are you suggesting that the time has come to mandate that companies may not discriminate against customers for other reasons as well?