So, I was having all kinds of trouble with sub-assemblies until I figured this out; I would make a rover and build it around a probe core and make it a sub-assembly and then I couldn't stick it onto anything by a docking port, it would only want to use it's root part to attach to other things. Then I learned to start with a docking port and build the rest of the sub-assembly on that, then you can save it as a sub-assembly and stick it onto things with the docking port. Or, build it however you want, and use the Select Root mod which lets you change any part to the new root part, extremely handy! Not sure if this is the same issue you're talking about, but in my experience you can include probe cores in sub-assemblies, I just had trouble with them being root parts.