Thankyou everyone, I've found out what's going on:

You're indeed right about the fact that the player knows the correct source would be tuner, but the tuner isn't there, so it goes into player.

The problem appears to be that a very central part of the player doesn't get told of the actual channel (it looks as though this ommision is purposeful, although I can't think why), so it thinks it is on FM radio when in fact the player is playing. Because the track profiler isn't active for non-player sources it just doesn't work.

Anyhow, before I can claim that this is fixed I must find out why the code appears to purposefully not communicate its channel switching actions to the rest of the player. It all seems to work though.