You do set all offsets to 0 in curaengine and host. Only define extruder offsets in repetier firmware.
As far as I know CuraEngine always swaps extruder at end of layer and assumes T0 active on first layer. So maybe adding T0 in start gcode would help here.