I did a code diff between bpmn-navigated-viewer v0.11.0 and v0.12.0 and realized that the function canvasObj._viewboxChanged is debounced. This is causing the blinking and shrinking of the diagram.
There is a way prevent canvasObj._viewboxChanged from getting debounced, by passing canvas.deferUpdate=false to the options parameter in Viewer.prototype._createDiagram. But there should be a way to pass this option while creating the bpmn viewer ?
Using the viewer object we reinitialize the method after the diagram is loaded to achieve the same effect as canvas.deferUpdate=false.