Is it possible to have a function in SubD to subdivide mesh locally?
I found it very difficult to locally delete mesh, and rebuild it with subdivided mesh. The overall mesh will become an open mesh, and it won’t remain the good topology
You could extract the control polygons, then use the SubdivideFace command from Mesh Utilities. Then SubDFromMesh to get SubD object again. Unfortunately the SubdivideFace on the mesh won’t do any automated ‘smoothing’, but may get you further.