Hi Amila,may be you can try python like below:
def circle_poly(x,y,c1,c2,r): #center, start angle, end angel, diameter
ptc=arcpy.Array()
pnt=arcpy.Point()
n=100 # 100 points every arc, or other value
for i in range(0,n+1): # n is the number of points of the arc
ang = (c1+(c2-c1)*i/n) * deg2rad
pnt.X=x + r * math.cos(ang)
pnt.Y=y + r * math.sin(ang)
ptc.add(pnt) #
return ptc
Then :
pie=arcpy.Polygon(circle_poly(x0,y0,0,359,dia),sr )
By this way, I believe circles can be constructed with no error cause you can control the numbers of points of every arcs.
By the way, It makes me remember my old post of "How many points are need to construct a smooth circle" , I still wonder how the ArcMap platform decide the numbers of a circle.