>>446
境界線が不要でただ塗りつぶすだけならこれが一番簡単だね
public void FillSlicedEllipseL(Graphics g,Brush brush, RectangleF rect, double ratio)
{
  var clip = g.Clip;
  var sliceRect = rect; sliceRect.Width *= (float)ratio;
  g.SetClip(sliceRect, CombineMode.Exclude);
  g.FillEllipse(brush, rect);
  g.Clip = clip;
}

必用ならパス作るしかないか