Google Sheets: Adding Rows By Matching Columns Dynamically Not By Position

I am having difficulty adding rows to a destination “master spreadsheet” from multiple “source spreadsheets” based on matching column headers.

We have several spreadsheets (the source sheets), with the same column headers but in different locations that are getting added to a master sheet which combines all files.

I have no problem with the rows properly mapping when the source sheet format follows the same format as the mastersheet format; however when I continue to add more sheets which have a different order of column headers, they a merely mapped by column position. So all A’s in source are mapped to A’s in destination.

The bottom branch shows when a new sheet is found and added to the master sheet- and this is how my bulk add is mapped