PCM isn't hard but Microsoft's implementation of the WAV format is full of inconsistancies. Trust me, to handle WAV correctly, even for just PCM encoding, it's not trivial.
If you follow that specification and its fine. :P trust me, ive done it, several times over :)
Hardest part was the LSB/MSB order of the bytes :)
Good that you got it working with BASS. Whats it for BTW?