Isso ocorre porque o cabeçalho RIFF contém informações sobre a duração do arquivo. Você precisa remover os cabeçalhos RIFF de todos os arquivos e criar um novo descrevendo o novo arquivo. Você está tratando-os como arquivos RAW, que eles não são
Você pode usar o sox para isso, seria uma abordagem melhor
O download do binário do Windows está em
Você também pode usá-lo para renderizar um arquivo png contendo os dados da FFT e coisas do tipo. É uma ferramenta muito legal.