I was able to get it to work by doing a quick and dirty change to the VirtualCanvas.cs file in the Nwazet.Go.Display solution. I have investigated any further but it is working for all my tests so far.
Commented out the problem code and just basically just ignored this call.
public void WaitUntilModuleIsInitialized() {
Thread.Sleep(1000);
_moduleReady = true;
return;
//while (!_moduleReady)
//{
// Execute(Synchronicity.Synchronous);
// if (_spiRxBuffer[0] == 0x80 &&
// _spiRxBuffer[1] == '[' &&
// _spiRxBuffer[2] == '[' &&
// _spiRxBuffer[3] == 'n' &&
// _spiRxBuffer[4] == 'w' &&
// _spiRxBuffer[5] == 'a' &&
// _spiRxBuffer[6] == 'z' &&
// _spiRxBuffer[7] == 'e' &&
// _spiRxBuffer[8] == 't' &&
// _spiRxBuffer[9] == '.' &&
// _spiRxBuffer[10] == 'd' &&
// _spiRxBuffer[11] == 'i' &&
// _spiRxBuffer[12] == 's' &&
// _spiRxBuffer[13] == 'p')
// {
// if (_spiRxBuffer[17] != _identifier8bitCrc) throw new ApplicationException("SPI data corruption");
// _moduleReady = true;
// return;
// }
// Thread.Sleep(200);
//}
}