OK, further investigation...
When CB loads a STEP file, it correctly parses circles as such. Silhouette, however, creates an odd combination of an arc and line as circles.
If I draw a native arc in CB and use SVG Export it works correcly. However, it appears that CB will only allow an arc to be created with a maximum sweep of 180 degrees. (Interactively from the GUI)
The surface->silhouette creates arc sweeps that can be much larger, I've seen up to around 357+ degrees.
Since CB correctly displays the arc it created with silhouette, it can handle larger sweeps. I am presuming that the plugin expects arc sweeps to be less than or equal to 180 degrees when exporting. (As that is the maximum that can be drawn interactively)
I think my next step

will be to examine the Silhouette created polylines and determine if they are path closed and consist of an arc and line within a tolerance and call it a circle. Or possibly identify the true circles in the STEP import, and compare to the errored polylines to fix the arc/line issue.
Then further preprocess into a primitive circle in the script, prior to SVG output.
Still plugging away in my spare time...
Paul