This bug appears to be fixed in version 6.4.0. My generated code had DMA interrupts in it at the start. I uncheck the "Force DMA channels Interrupts" box, uncheck the box for the DMA interrupt, generated code, and closed cubeMX. The generated code is...
Prasad Dait's and RDean's answer just made me look like a hero. Removed the write protect bits allowed me to program an unresponsive micro. Good call.THANKS!