In the end you'll have to figure out what works for your particular setup.
It sounds like maybe you are confusing digital pass-through with just "digital" vs "analog". You don't need to use analog outputs for volume control or audio output sharing to work. I use only an optical spdif output from my htpc to my digital receiver. When digital pass-through is active, you can't control volume on anything but the receiver itself, but when not using digital pass-through, everything works normally including volume, TTS, and soft-mute/unmute. It is still all digital and all going through my digital output. In my case, I don't touch the XBMC setting for digital pass-through, and it only turns on whenever I play content that supports it, which usually means AC3 or DTS multi-channel video. I accept that I can't control volume in XBMC when watching movies. Because i use an Amulet that is not really an issue, but if I were using an open microphone I would probably wire up some kind of pause / enable VC command on my remote.
In order to keep my TTS working at all times, I have decided to use my TV speakers for TTS via the HDMI output, but that does not really apply to your current problems I guess.
If volume control works at all with XBMC (i.e. using plus/minus on keyboard) then VC should be able to use SoftMute/Unmute, so you can confine your testing to just trying to control XBMC volume normally. If volume control works in XBMC, but softmute doesn't work then you have some other issue with your setup.