Configure las filas para que se repitan en la parte superior al imprimir: abra XML y Excel

Estoy intentando que las primeras 4 filas de un archivo xlsx se repitan en la parte superior de cada página cuando se imprimen. Estoy utilizando el Open XML SDK para lograr esto.

Mi archivo está siendo generado por el servicio web de ejecución SSRS como un flujo de archivos. Luego necesito modificar varios diseños y configuraciones de página (márgenes, tamaño de página, zoom, etc.) antes de entregar el archivo al usuario, ya que mis usuarios tienen muy poca perspicacia de Excel. Todas las demás configuraciones que necesito para modificar funcionan correctamente, por lo que he eliminado todo ese código de este ejemplo.

Al intentar establecer los encabezados de página repetidos utilizando el código siguiente, se ejecuta sin errores. Sin embargo, cuando intento abrir el archivo después de ejecutar el código, aparece un mensaje de archivo dañado y no se abre.

¿Alguna idea de lo que estoy haciendo mal aquí? ¡Me esta volviendo loco!

using (SpreadsheetDocument xl = SpreadsheetDocument.Open("C:\\" + filename, true))
{
WorkbookPart wbp = xl.WorkbookPart;

//-----------------------------------------
// repeat rows at top when printing
//-----------------------------------------
DefinedNames dn = new DefinedNames();
wbp.Workbook.Append(dn);
wbp.Workbook.Save();

DefinedNames definedNames = wbp.Workbook.Descendants<DefinedNames>().FirstOrDefault();
DefinedName n1 = new DefinedName() { Name = "_xlnm.Print_Titles", LocalSheetId = (UInt32Value)0U };
n1.Text = "alpha_sort_nc!$1:$4";
definedNames.Append(n1);
wbp.Workbook.Save();

xl.Close();
}