This call:
FirstRowAsHeader = Table.PromoteHeaders(TableWithoutHeader)
replaces the column names you have with the values from the first row. 
Since you have your first value under the column as the filename -"Week", your table is using that filename as the column name.
This can be fixed by adding the custom column after you use PromoteHeaders:
let ExcelFile = (FilePath, FileName) =>
    let
        Source = Folder.Files(FilePath),
        File = Source{[#"Folder Path"=FilePath,Name=FileName]}[Content],
        ImportedExcel = Excel.Workbook(File),
        Sheet1 = ImportedExcel{[Name="Page1_1"]}[Data],
        TableWithoutHeader = Table.Skip(Sheet1, 3),
        FirstRowAsHeader = Table.PromoteHeaders(TableWithoutHeader),
        TableWithWeek = Table.AddColumn(FirstRowAsHeader,"Week", each FileName),
    in
        TableWithWeek
in
    ExcelFile