I feel like there are two conversations going on here. The first is “how to convert from SubD to Brep in GH1?”, the other “how to convert a Brep to a single surface?”. I don’t have a lot to say about the second one but I can offer some additional details on the first one. Hopefully there are helpful to some of the conversation here.
GH1 is able to convert from SubD to Brep out-of-the-box, but with no options available. Just plugin a SubD type into a Brep component, or to an input that takes Breps, and voilà, the SubD is a Brep.
GH1 is also able to convert from SubD to Brep with all possible options (from the Rhino ToNurbs command), using a scripting component and the RhinoCommon SubD.ToBrep API. See this thread for a script: Can we have a ToNURBs with options Grasshopper component please?
There is no need to bake and run ToNURBS to get from a SubD to a Brep in GH1.
Also, and this is where the two questions intersect, converting from SubD to Brep with the packFaces option on will reduce the number of surfaces in the resulting Brep, even creating a single surface Brep if the SubD topology was quads-only.