I don't know much about kiwi drive, other than watching the original video and the 229 parody, but maybe I can still help you.
The vast majority of DC motors are designed to run more efficiently in one direction. This is a function of how the motor is wound. This difference was very drastic in the drill motors last year; I haven't found it to be as severe in the CIMs this year. If I had to fix this in software, I would take a CIM motor, and hook it up to a Victor. Pick a few different clockwise PWM values, and measure the speed with a tachometer (you can make your own with an encoder). Then output the equivalent values to spin the motor counterclockwise. Keep note of the speeds, and then do a calculation to slow the motor when it's running clockwise. For example, if the motor runs twice as fast clockwise as counterclockwise (a gross exaggeration):
Code:
if(pwm15>127)
pwm15=(pwm15-127)*.5+127;
Hope this helps.