I don’t understand how this might be happening. If I look at vtkActor::GetProperty(), I see it invokes vtkActor::MakeActor() which simply invokes the vtkProperty constructor. In that constructor, the Shading member variable is indeed initialized.
vtkActor::GetProperty()
vtkActor::MakeActor()
vtkProperty
Shading