Is there a reason why the vtkStaticCellLocator is not used as the default in vtkImplicitPolyDataDistance
Probably because vtkStaticCellLocator was added after vtkImplicitPolyDataDistance, and vtkImplicitPolyDataDistance was never updated.
vtkStaticCellLocator should be thread safe (once built). There is an outstanding issue for a potential race condition that needs tracking down, maybe this is biting you?