I believe this all boils down to a version mismatch of the SoftDevice code used for building the bootloader vs the building the application code.
The Adafruit runtime/app defines SoftDevice version at 6.1.1
The bootloader is built targeting version 7.3.0
The data within the two versions of the SoftDevice is at different addresses hence the user SVC was not being forwarded to the user app as expected.
If I rebuild the bootloader to target SD 6.1.1, then re-flash bootloader, the app seems to work ok.
I’ve not yet attempted to re-target both to use 7.3.0 SD.
The sources:
bootloader: https://github.com/0hotpotman0/Adafruit_nRF52_Bootloader
Adafruit PlatformIO runtime:
(you will need to craft variant files for the Xiao)