Make Multiple Audio Tracks Crossfade Seamlessly Into Each Other

I’m making a stealth game that plays one of three different variations of the same song depending on the situation (normal gameplay, sneaking right behind an enemy/corner, and being caught by an enemy).

I assumed that the best way to do this is to have all three tracks play at the same time, but have two of the three tracks muted. Then, I use a few if statements; so that once the player enters one of the three situations I described above in parentheses, the corresponding track will raise in volume while the one currently playing fades out.

The problem with this is I can only apply one audio listener to the player. So how do I go about doing this?

you can only have one audio listener, but you can have many audio sources.
1 audio source per song.
adjust the volumes as you said.

the audio listener can listen to many sounds at once