I think what you’ve tried so far is great.
It seems for a closed surface, rendering a surface using the svreg labels are your best bet so far.
Can you specify what was inaccurate about your surfaces?
Note also that your svreg labels will be subdelineated by GM and WM labels for each individual cortical label. ROI ID labels for GM starts with “1” and for WM “2”
example: 1120: R. Superior frontal gyrus (WM) 2120: L. Superior frontal gyrus (WM)
I’m not sure how we can help you more with the given information. What are you trying to calculate exactly?