You will need to use Microsoft.Office.Interop.Word.
This will allow you to do something like this:
var start = this.Content.Start;
var end = this.Content.End;
var docRange = this.Range(ref start, ref end).Select();
docRange.Font.Size = 10;
docRange.Font.Name = "Franklin Gothic Demi";
For more detail see: How to: Programmatically Format Text in Documents.
EDIT:
To add an image to the header you need to do something like:
section.Headers[Word.WdHeaderFooterIndex.wdHeaderFooterPrimary]
.Shapes
.AddPicture(@"headerImage.jpg", left, top, width, height);
Or:
Document doc = new Document();
doc.LoadFromFile(@"C:\MyDoc.docx", FileFormat.Docx);
HeaderFooter header = doc.Sections[0].HeadersFooters.Header;
Image headerImage = Image.FromFile(@"C:\headerImage.png");
header.Paragraphs[0].AppendPicture(logo).TextWrappingStyle = TextWrappingStyle.Tight;