XAudio2 goes through a set of heuristics to figure out the "optimal" output format for a given audio device. On Xbox it is always 48Khz float 5.1, and on Vista it's a fixed format determined by the user in the audio control panel, but on XP we start from our preferred format (44Khz float 5.1) and work backwards from there until we find something supported by the driver. It sounds like in this case the X-Fi is claiming to support 5.1 natively (i.e. it lets us create a 5.1 H/W sound buffer to render to), so we go no further. However, you should be able to use 7.1 by asking for it explicitly when you create the mastering voice.
Does that make sense?
Dugan Porter (XAudio2 dev)
Dugan Porter [MS]
Game Audio Team