Much to my surprise, considering everything that could be an obstacle, was indeed an obstacle, I retrofitted cruise control today. I went in thinking I'd just double the 1 hour suggested time ... I ended up getting very little else done today!
What could have gone wrong:
Communications errors with modules
Airbag took ~40 mins to unclip (the most retarded solution BMW could have imagined)
All reinstalled and I'd failed to centre the slip ring, very lucky I was careful turning the wheel before I realised
Take it all back off again to centre slip ring
Coding instructions I had didn't match the software I had
Unable to code to DSC module
But in the end, after fighting with NCSExpert (mostly in German) and basically spamming every option I could find I brute-forced my way through.
You need to code the vehicle option to the CAS module and then update the DCS module. The CAS completed successfully multiple times, the DSC not at all, Christmas tree dash (and 26 stored errors 🤣). Fortunately the calibration of the steering wheel angle sensor in ISTA was straight forward (I needed to do it twice, seems common) but still Christmas tree dash. After calibration I cleared the errors and only one left which was "DSC Module Coding Required" which I sort-of knew but the kick in that direction was motivating because I'd had so many failed updates to random modules earlier I assumed I'd royally screwed up a whole bunch of things. Back into NCSExpert and I just winged it really, selected DSC wherever I could and spammed CODIEREN on every screen possible. Once I'd exhausted my options I cleared the codes and started the car (with my eyes closed). Tada! Normal dash.
I was still completely unconvinced it was working but took it for a drive and how about that, cruise control and no errors/codes/lights. It even comes up as an official retrofit in ISTA.
It's a novelty for me really but it's done now (sorry @Driftit - but I did think of your request multiple times today when I was about to give up in despair).