I'm having the same problem (code below). Did you ever get a solution to this error? Thee error happens at bufferConstruction.ConstructBuffers(enumGeom, buffDist, bufferColl);. Throws this error: Attempted to read or write protected memory. This is often an indication that other memory is corrupt.
var map = ArcMap.Document.FocusMap;
var graphicsContainer = (IGraphicsContainer)map;
//get map unit
var outUnits = map.MapUnits;
var inUnits = esriUnits.esriMeters;
var unitConverter = new UnitConverter();
double buffDist = unitConverter.ConvertUnits(35, inUnits, outUnits);
var selection = (IEnumFeature)map.FeatureSelection;
selection.Reset();
var feature = selection.Next();
object missing = Type.Missing;
var geomColl = new GeometryBagClass();
geomColl.AddGeometry(feature.Shape, ref missing, ref missing);
var enumGeom = (IEnumGeometry)geomColl;
enumGeom.Reset();
var bufferConstruction = new BufferConstructionClass();
var bufferProps = (IBufferConstructionProperties2)bufferConstruction;
bufferProps.UseGeodesicBuffering = true;
var bufferColl = new GeometryBagClass();
bufferConstruction.ConstructBuffers(enumGeom, buffDist, bufferColl);