I'm not speaking for Chris, Goldhawk or X2 here - I'm just spitballing about this since it came up a few times and I've worked on a few adaptive music projects.
From an asset standpoint, it's fairly easy to do. The tricky part with these systems is defining the playback logic and implementing it so it works properly (which includes addressing a lot of weird edge cases you may not expect). Even with a relatively easy system that is driven by a single emotion (let's say 'tension'), it can get squirrely:
How many levels of tension should you have?
Are they structured linearly, logarithmically or something else?
What logic escalates or deescalates the player through those levels?
Proximity to the downed UFO?
Overall health of the player team vs enemy team?
Time of day?
You'd probably want a system that measures and balances a lot of these together as trying to use a single variable creates obvious problems. For example, in the early game, enemy count might be the best way to measure tension but I'd argue that by late-game, it would be more about enemy rank. Trying to stun a single Praetor guarded by two elites feels more tense to me than having to mop up the last 4 guards on a terror map. There's loads of other problems I can think of with that example. Proximity to downed UFO kinda makes sense if there's a cluster of aliens inside, but if they're scattered all over the map it's actually misinforming the player.
So, working out the logic itself is no small feat, especially if you're trying to work with multiple emotional states.
Then, you still have to translate that into code and map it to different musical elements.
Do you bring in the hi-hats and pads when going from level 1 to level 2?
Do you only bring in the pads at level 1, then both at level 2?
How long are the crossfades?
What about volume adjustments?
These questions compound upon themselves and it takes a lot of playtesting to get it feeling 'right'. I can completely understand why so many non-AAA devs opt for the much simpler solution of playing single tracks in the background or whatever.
Anyway, like I said -- this isn't about X2 at all. I just do this for a living and I'm excited about this project, so it's fun for me to come on here and yak about it.