The column header of the DataGrid is not a FrameWork element for some reason, and so you cannot use bindings to set things like the header text. Please correct me if that is
I solved this by using the HeaderTemplate and binding to the DataContext of the DataGrid, using RelativeSource.
HeaderTemplate
DataContext
DataGrid
RelativeSource
The same binding within the Header property did not work out.
Header