I gave up on the Harmony I2C and SPI drivers and wrote my own bit bang implementation. I use timer delays to control the clock speed. Not the most CPU time efficient way of doing things, but it is hard to argue with something that works.
Which the post before yours explains is already built in to Harmony. It contains a full "bit bang" implementation to do it for you.