In what way is the music crashing for you? From what I've tested, the main causes of addmusic music crashing in accurate emulators are
1. Echo never gets turned off.
In vanilla smw when you die or complete the level, the normal death/goal music (and a few others) sets the echo LR volume to 0. This stops the echo that still exists in the buffer. I don't remember the details exactly since it's been a few months, but when you change songs, the sound left in the buffer can end up playing eternally. The only way I've found around this is to have every song start off by setting the L&R echo volume to 0.
SMW's only vanilla song with echo is the cave music, so it seems they didn't really code the spc engine to prevent this.
By the way, here's the exact echo command used by the cave music which you could find by digging around a bit in the music data. I use it by default since it seems to cause the least amount of problems and sounds decent.
Code
$EF $F6 $21 $21 $F1 $04 $6C $00 $F2 $DC $15 $15
Remember to change the $F6 to reflect the channels you want echoed though
2. Some versions of addmusic store stuff in the echo ring buffer space because... they're bad?
According to some japanese info http://d.hatena.ne.jp/GOCHA/20070428/smwmusicspec , some versions of addmusic actually store data in the $6000 area, which will be destroyed as soon as echo starts. With carol's addmusic, you're probably fine.
3. Echo delay too big.
You don't appear to be having this problem.
4. Bad percussion commands
I haven't had a chance to look into this one too much, but I noticed that using the percussion instruments in certain ways crashes the music instantly.
By the way, if you can't find the problem, do you want to send me an ips of the hack in question? The fact that custom music still crashes for everyone on real emulators still bugs me and I want to drop the hammer of justice on it.