I have built the circuit and tested it, and it works (tested the load with an ammeter), at least up to 1 amp @ 40V. I have used your parameters, 40V for the source, an MC7812 regulator for the opamps, one LM358, etc.
The schematic is attached below. If you are interested, I can post some images and probe the circuit with an oscilloscope to see how it behaves. The load current increases in an apparently linear way with the pot, but I haven't checked the precision.
Some obvious points:
-> If you connect the current sink directly to 40V, the mosfet will dissipate a lot of power (about 40W at 1 amp). If you are planning to go into the multiamp range, you'll need a massive heatsink and probably a fan. Study carefully the thermal aspect of the project. A quick look at the IRFZ44 datasheet tells it manages up to 50 Watts, so without source resistance that's 1.25 amps per transistor. Without a good heatsink, your mosfets will die very quickly.
-> I designed the voltage divider thinking in very high currents, and used a low quality potentiometer. Design the divider carefully for the desired current range, and use a quality pot. The current is controlled by a voltage divider, which is buffered by one half of the 358, then divided by 5, and sent to the regulator.
-> In my circuit I used an alleged IRF1405 bought from ebay, who knows what's really inside. It works, though. The 358 is also an ebay cheapy, bought in a lot of 50.
-> Don't forget to load the 7812 with at least 5mA for it to regulate reliably. I used an LED for that.
To increase stability, I thought of using the opamp to drive a 2N7000 (from the 12V supply!), which in turn drives the bigger mosfet. The 2N7000 has much lower capacitance. The idea worked in simulation, but seemed to give no real advantage. Simulating some more, I got oscillations for very light load currents with no gate resistor: with a gate resistor, the oscillations went away.