Are you using PCD variable or configuration protocol to
set MAC address?
I used a PCD, exactly as you had written it. I put the PCD in my
.dsc file.
Maybe I misunderstand why that's bad. It seems like the right kind
of thing for a PCD. It's the same way the Seattle on-board 10Gbe
ports work. From OverdriveBoard.dsc: