By means of the rich Aspose.Words 4.0 functionality it's pretty easy
Here's the improved sample that seems to produce the result you want:
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
Shape circleShape = new Shape(doc, ShapeType.Ellipse);
circleShape.Left = 100;
circleShape.Top = 100;
circleShape.FillColor = Color.Red;
circleShape.Width = 100;
circleShape.Height = 100;
builder.InsertNode(circleShape);
Shape yLetter = new Shape(doc, ShapeType.TextPlainText);
yLetter.TextPath.Text = "Y";
yLetter.Left = 100 + 20;
yLetter.Top = 100 + 20;
yLetter.Width = 60;
yLetter.Height = 60;
yLetter.FillColor = Color.White;
builder.InsertNode(yLetter);
Shape arrowShape = new Shape(doc, ShapeType.UpDownArrow);
arrowShape.Left = 100;
arrowShape.Top = 200;
arrowShape.Width = 50;
arrowShape.Height = 100;
arrowShape.FillColor = Color.Lime;
builder.InsertNode(arrowShape);
doc.Save("MyDocument.doc");