You have to disable the
EnableHeadersVisualStyles[
^] property in order for your desired changes to be used (i.e. not overridden by user theme). The default value for the property is
True
E.g.
DataGridView1.EnableHeadersVisualStyles = False
With DataGridView1.ColumnHeadersDefaultCellStyle
.Font = New Font(DataGridView1.Font, FontStyle.Bold)
.BackColor = Color.Azure
.ForeColor = Color.Crimson
End With