Testing Geometry Polygon Data is Valid Using a Stored Procedure
This issue was being caused because the ogr_geometry coming from the recordset had not been cast to a string. 

When I changed the field in the recordset to ogr_geometry.ToString() AS sGeometry and used sGeometry instead of ogr_geometry all worked as expected.