I used this for my own needs and I think it would be a good fit to add to the library. It's a copy-paste of DrawCircle with different radii for horizontal and vertical.
public void DrawEllipse(Vector2 center, float radiusHorizontal, float radiusVertical, Color c1, Color c2, float thickness = 1f)
{
// Account for AA.
radiusHorizontal += _pixelSize;
radiusVertical += _pixelSize;
var topLeft = center + new Vector2(-radiusHorizontal, -radiusVertical);
var topRight = center + new Vector2(radiusHorizontal, -radiusVertical);
var bottomRight = center + new Vector2(radiusHorizontal, radiusVertical);
var bottomLeft = center + new Vector2(-radiusHorizontal, radiusVertical);
var ps = _pixelSize / (Math.Max(radiusHorizontal, radiusVertical) * 2);
var u = 1.0f;
_vertices[_vertexCount + 0] = new VertexShape(new Vector3(topLeft, 0), new Vector2(-u, -u), 0f, c1, c2, thickness, ps);
_vertices[_vertexCount + 1] = new VertexShape(new Vector3(topRight, 0), new Vector2(u, -u), 0f, c1, c2, thickness, ps);
_vertices[_vertexCount + 2] = new VertexShape(new Vector3(bottomRight, 0), new Vector2(u, u), 0f, c1, c2, thickness, ps);
_vertices[_vertexCount + 3] = new VertexShape(new Vector3(bottomLeft, 0), new Vector2(-u, u), 0f, c1, c2, thickness, ps);
_triangleCount += 2;
_vertexCount += 4;
_indexCount += 6;
if (_triangleCount >= MAX_TRIANGLES)
{
Flush();
}
}