...
All of these seem to be fine, so I’ll order some more MCUs and see what I find by replacing it.
The one other thing I checked before replacing the MCU was removing the CAN transceiver. This solved the problem, and not the board programmed properly! It is worth noting that the onboard CAN termination was populated on this board.
Replacing the CAN transceiver, the board not longer programs, then removing C2, the capacitor in the onboard CAN termination, the board programs successfully! The board also programs just fine with an external CAN termination resistor in the duraclik connector.