Here's why:
* The vowel "u" is followed by a consonant ("n"). This usually indicates a short vowel sound.
* The "i" at the end of the word is silent. It doesn't affect the pronunciation of the "u".
Therefore, the "u" in "punish" sounds like the "u" in "cup" or "sun".