1. По колонтитулам: В Ворде верхний колонтитул обозначается параметром Headers, а нижний Footers и доступны эти объекты через объект Section(Раздел). Если обращаться к колонтитулам через объект Selection.HeaderFooter как это делаете вы то для активизации верхнего колонтитула надо обязательно прописать код
ActiveWindow.ActivePane.View.SeekView = wdSeekCurrentPageHeader
для нижнего
ActiveWindow.ActivePane.View.SeekView =wdSeekCurrentPageFooter
т.е. этими строками вы обращаетесь к текущему верxниму или нижниму колонтитулу.
Опять же Selection.HeaderFooter может привести к ошибке если наборщик вставлял в документ знаки разрывов разделов. Я напишу Вам свой код нумерации страниц документа на VBA комментариями и вы его сможете адаптировать под синтаксис с# xотя код который я напишу можно будет использовать напрямую сразу в ворде. И еще по какому принципу созданы имена файлов, т.е. по какому принципу вы даете понять коду в какой последовательности должны идти файлы.
2. По составлению общего содержания вообще особых проблем не вижу, если правильно решен 1-й пункт