To work this around use DisptacherTimer instead of Task.Run.
This issue is related to the SurfaceSeries3D. Originally when you have a data point with its ZValue set to null, the chart will create a gap on the surface. This always happens. However, on some machines the null values are treated a bit differently by the renderer and a triangle is drawn from the points around the null data to the center of the viewport. This leads to an unexpected visual glitch.
Allow stacking of series one over another. Check the attached project for a possible approach for working this around.
This can be integrated in the Chart3DCameraBehavior. The user should be able to pan around the viewport. And also to zoom based on the mouse position. Currently, the zooming is based on the center of the viewport.
Add 3d chartview IsInverse axis options.