It's not about your clock speed, it's about your edge rate. Anyone who's had to lower drive strength or slew rate can tell you that even at 0.0000...1 Hz clock speed, if your routing is trash it can ring to the point of detecting multiple edges or interfering with other signals.
Also some of the issues were on USB lines which hopefully aren't running at 2MHz.
Lastly, since you're coding it, maybe make it pull reference layouts+routing for power supplies from the datasheets. That's step 1 for any real eCAD student.