vtkPropPicker not working in OSX and Qt

It seems vtkCellPicker suffers from the same problem (OS X and VTK 9.1), see code below. The picker returns the wrong world position.

import sys
import math
import vtk
from PySide6 import QtWidgets
from vtk.qt.QVTKRenderWindowInteractor import QVTKRenderWindowInteractor

class MainWindow(QtWidgets.QMainWindow):

    def __init__(self, parent = None):
        QtWidgets.QMainWindow.__init__(self, parent)

        self.frame = QtWidgets.QFrame()
        self.vl = QtWidgets.QVBoxLayout()
        self.vtkWidget = QVTKRenderWindowInteractor(self.frame)

        self.ren = vtk.vtkRenderer()
        self.vtkWidget.GetRenderWindow().AddRenderer(self.ren)
        self.iren = self.vtkWidget.GetRenderWindow().GetInteractor()

        self.picker = vtk.vtkCellPicker() #vtkPropPicker()

        # Create source
        source = vtk.vtkSphereSource()
        # Create a mapper
        mapper = vtk.vtkPolyDataMapper()
        mapper.SetInputConnection(source.GetOutputPort())
        # Create an actor
        actor = vtk.vtkActor()
        actor.SetMapper(mapper)

        self.ren.AddActor(actor)
        self.ren.ResetCamera()

        # self.iren.SetPicker(self.picker)

        self.vl.addWidget(self.vtkWidget)
        self.frame.setLayout(self.vl)
        self.setCentralWidget(self.frame)
        self.show()

        self.iren.AddObserver("LeftButtonPressEvent", self.onclick)
        self.iren.Initialize()
        self.iren.Start()

    def onclick(self, iren, event):
        x, y = self.iren.GetEventPosition()
        print("Left button pressed at", x,y)

        cellId = self.picker.Pick(x, y, 0, self.ren)
        if cellId >= 0:
            xyz = self.picker.GetPickPosition()
            radius = math.sqrt(xyz[0]**2 + xyz[1]**2 + xyz[2]**2)
            print(f"  3d picked pt {xyz} radius: {radius} ") 
            source = vtk.vtkSphereSource()
            source.SetRadius(0.02)
            mapper = vtk.vtkPolyDataMapper()
            mapper.SetInputConnection(source.GetOutputPort())
            actor = vtk.vtkActor()
            actor.SetMapper(mapper)
            actor.GetProperty().SetColor(1,0,0)
            actor.SetPosition(xyz)
            self.ren.AddActor(actor)


if __name__ == "__main__":
    app = QtWidgets.QApplication(sys.argv)
    window = MainWindow()
    sys.exit(app.exec())

Depending on where you pick, you might see something like

Left button pressed at 150 172
  3d picked pt (0.19066947142160784, -0.22312961309267365, -0.3825671026006565) radius: 0.48218177025198994 

(The radius should be close to 1.)