Software for internal engine mods... shark injector?
So here's my setup: I have an '02 330Ci with 11.0:1 vented pistons with a 1mm overbore, H-beam rods 5mm longer than stock, 258 deg. intake/exhaust cams with 11.15 mm lift, upgraded valve springs, rod bearings, main bearings, Carbonio CAI, ebay headers, and Borla cat-back exhaust fitted with Magnaflow cats (plus other mods that won't be relevant to my question).
I was originally supposed to get my ECU programmed with the software used by the people who suggested the configuration and sold me all the parts (Metric Mechanic in MO). I believe Mark D'Sylva does their software. I live in CA and shipped my ECU to them, but they were unable to get the software on my ECU at the time. So I was never able to get the software, but my local indy mechanic said Shark Injector would do the same thing, so I installed the Shark Injector software.
My problem is that the car has never run long periods without throwing one code or another ever since I've done the mods. It has been an epic 2 year fiasco of taking the car in to my mechanic and having him tweak this, and tune that, and now my smog is out of date, and I can't get rid of a couple codes (P2096--post catalyst fuel trim system too lean bank 1, and P0172--System too rich bank 1). The particular codes are not what I'm concerned about--there were many more prior to these.
To get to my question: based on the mods I've done, did I need that custom software after all, or should the shark injector have done just as well? Could my lingering issues be related to the fact that I don't have the right software? Did my indy "performanc" mechanic lead me astray?