Setting the mute property to false on a Sound that was never muted causes the volume to be overwritten by _muteVolume, which is zero when the sound has never been muted before.
Maybe add a check at the beginning of the mute setter, which sees if the new value of mute is different from the old one.