It -could- be causing it, pull the plugs and check them. They should be a lightish tan color, not black or wet. If they are black and/or wet, then that means carbon/unburned fuel, replace them and let the revs climb a little higher.
Heck, your not even in the power band.
Go ahead and let her rise a bit more in RPM before shifting, but only as far as you are comfortable. At 40mph I don't think you should be in 6th, maybe not even 5th, try and keep your cruising RPM above 3-4000 RPM if you can (My RPM figures may be off, the 400 is a little more rev-happy than a 600, I usually hover around the 4000RPM range and usually don't go into the highest gear for cruising until I'm above 60mph).
As for the stalling at idle, it -could- be plugs. I'm not sure what the idle on a 600 is supposed to be, the 400's idle is set somewhere between 1600 and 1800 RPM though, it's possible that your idle is just to low.
Hopefully a 600 owner will chime in on this one.