Here's another way that indicates that the boundaries are identical:
>>> point = 'mypoints' # a point
... pt_geom = [i for i in arcpy.da.SearchCursor(point,'SHAPE@')][0][0] # get geometry
... buff = pt_geom.buffer(20) # buffer point by 20m
... buff_line = buff.boundary() # convert to line
... ring_buffs_fc = 'buffs' # premade multiple ring buffers (10-20m, and 20-30m)
... ring_buffs = [i for i in arcpy.da.SearchCursor(ring_buffs_fc,['SHAPE@','distance'])] # get geometries
... mypoints = [] # points container, otional
... counts = [] # counts list
... reps = 100000 # how many times to test
... for i in range(reps): # start looping
... new_point = buff_line.positionAlongLine(float(i)/reps,True) # create point at percentage along buffer line
... count = 0 # reset counter
... mypoints.append(new_point) # add point, optional
... for ring_buff in ring_buffs: # test against ring buffers
... if not ring_buff[0].disjoint(new_point): # see if disjoint
... count += 1 # add to count
... counts.append(count) # add count to list
... print (min(counts),max(counts)) # print min/max
... arcpy.CopyFeatures_management(mypoints,r'in_memory\points') # write points, optional
...
(2, 2) # each and every record intersects 2 ring buffers