Just use Graphics.DrawPath:
Dim x As Integer = 2
Dim y As Integer = 2
Dim w As Integer = 400
Dim r As Integer = 30
Dim path As New System.Drawing.Drawing2D.GraphicsPath()
path.AddArc(x, y, r, r, 180, 90)
path.AddLine(x + r, y, x + w - r, y)
path.CloseFigure()
g.DrawPath(Pens.Red, path)
If you are handling the Paint event, your can get the context from the PaintEventArgs parameters Graphics property. Otherwise you need to create the Graphics object for the item you are drawing onto, and Dispose it when you are finished.