A few possibilities spring to mind....
MIDI buffers still set too low. Try 1,000.
PCI bus interrupt requests interfering with Sonar/Windows ability to stream audio in real time. Things like wireless network adaptors are often the offender if that's a problem. There are downloadable free tools that can check for this, such as
LatencyMon. There's also
this one which for a long time was the most recommended tool and gives far easier to interpret results, but according to the developer it isn't suitable for use with Windows 8.
Could a dodgy MIDI clock source perhaps cause the symptoms defined?
Out of interest, does the metronome (settings are in the per-project part of preferences) play in time using both audio and MIDI outputs?
What happens if you bounce the MIDI track to convert it to audio? Do the audio transients line up with the grid correctly or are they displaced? If so, by what kind of amount? Same question if you "freeze" the synth.
Finally, details of the PC, Windows version, whether 32 or 64 bit Windows/Sonar and audio/MIDI interface might well be helpful to people trying to assist you.
And apologies in advance if you reply to me and I don't get back to you quickly. Going away for the weekend tomorrow and I don't know how good (or, most likely, poor to non-existant) the G3 mobile internet coverage is going to be.