As a man with two sets of Z-5500s, one set connected to a PS3 via Optical and one set connected to my X-Fi Fatal1ty via Coax I can tell you it's a right PITA getting it working. It will work on XP but it's much easier to set up on Vista or 7.
Firstly you need to check your X-Fi has either an Optical or a Coaxial output because from previous experience with the lower end X-Fi I have not seen those connections present.
Secondly you need to decide when you want the DD signal to be sent-all the time or only when a video you're playing supports it. If you want all audio coming out of your PC to be DD encoded you need to purchase the
DD Live/DTS Connect encoding package from Creative this will encode all sound coming out of your PC into DD for your decoder. You should be aware however that due to the encoding sequence there is a slight delay between audio and video which I have calculated to approximately 250ms. You can combat this by placing a delay of -250ms on the sound buffer if you're playing a video file (VLC or MPC are very useful for this) but in all other applications this is an inherent flaw. In most gaming this is enough to cause you a disadvantage, in games like CS:S this is enough to get you repeatedly killed. Hence why I still use analogue connections for my 5.1 headset in any competitive game.
If however you only want DD/DTS to be output when a video file supports it you need to get Media Player Classic or VLC (
MPC HomeCinema is my personal favourite) and you need to set it to not decode DD/DTS files but to simply pass them out as a bitstream. You may have to do a bit of fiddling with the Creative software settings for the digital output but if you have a file playing while you do that you should get it eventually. I would quote you the exact settings you need but I'm on my netbook away from home for a week.
Get back to me if you need more info and I'll see what I can do.