Well, after everything said and done, I ended up buying a high end ODB2 tool - xtool d8 and performed Cam/Crank relearn and now most of misfires went away. Now from time to time I get cyl 2 misfire, but it does not trigger check engine and still produces good trip record. I am just wondering why dealer could not perform same function. Even with this fix there still an issue, but something I can resolve over time. The xtool allows to read live data, showing cams position and difference between desired and actual all withing 5% range, injector pulse width, etc. Interestingly - cylinders with lower pulse with on injectors are the ones misfiring. I wonder if there is a way to re-code injectors to same pulse width....not sure how to do this.