I have an arduino and i take the 0-5 in the output
How are you doing that? The "regular" Arduino doesn't have a digital-to-analog converter. analogWrite() is PWM, which can be filtered to variable DC.
but i dont know how to extend this limit. The non-invering op amp doesn't work (at least as i used him ) cause i got issues with the double polarity and the dependance from the load.
An op-amp should work and 4mA shouldn't present a problem. But, you'll generally need bipolar power supplies if you need to go all they way down to 0V and more than +10V to get 10V out of the op-amp.
A "rail-to-rail" op-amp might get you to 0V (it should at-least get very-close) with a single power supply, but you'd still need +10V (or more).