I'm experiencing the same trouble. I put @sound in my gcode file at the beginning of a layer to warn me that a bridging layer is coming so I can watch it. That @sound never happens even though it is placed at 5 different points in the file. However, I put another @sound right before a M109 SXXX to set the extruder to a new temperature. The printer stops to wait for the extruder to heat up to the new temperature and after about a 5 second delay, the sound goes off.
For the other @sound that doesn't work, I've tried adding extra commands around it and even multiple @sounds like this:
@info Before Sound
@sound
@sound
@info After Sound
I see the info messages, but still no sound goes off.
This is using the latest stable Marlin software with Repetier Host 1.5.4 on Windows.