Hi,
Avoiding controlled airspace (B+C specifically) is not completely necessary.
From CFR 91.215
[!--quoteo--][div class=\\\'quotetop\\\']QUOTE [/div][div class=\\\'quotemain\\\'][!--quotec--](d) ATC authorized deviations.
Requests for ATC authorized deviations must be made to the ATC facility having jurisdiction over the concerned airspace within the time periods specified as follows:
(1) For operation of an aircraft with an operating transponder but without operating automatic pressure altitude reporting equipment having a Mode C capability, the request may be made at any time.
(2) For operation of an aircraft with an inoperative transponder to the airport of ultimate destination, including any intermediate stops, or to proceed to a place where suitable repairs can be made or both, the request may be made at any time.
(3) For operation of an aircraft that is not equipped with a transponder, the request must be made at least one hour before the proposed operation.[/quote]
Since (3) in not applicable here (as you pointed out you do have an xpnder in SB/FSInn), and if you consider not being able to squawk a discreet code as inop, once you pre-coordinate it with the appropriate controller, you can enter B or C airspace.
By the way, if you use SB, you can use the command ".x [code]" to change your squawk code.
Cheers!