There were some issues with the operator: * The `keep_original` option could easily crash blender. * The surface projection did not work correctly. This commits fixes those issues. The `keep_original` was missing a tag for the topology that changes in the drawing. The surface projection needed to cache the viewport depths. This is done once and then used to initialize the `DrawingPlacement`.