Create instances of offscreen canvas vs Create instances of Path2D vs Render offscreen canvases vs Render Path2D vs Render directly with ctx.fillRect()