HIMNL9, you only said to heatsink the MOSFET, but what about the OP-AMP itself? i will try this with an LM386, not sure if it's a good or bad choice of chip for this application, but i already have a bunch laying around
The op-amp does not heat at all ..... it works only as regulation element, and manage millivolts at the inputs (and have so high impedance that the power dissipated is, practically, just the one needed for drive the mosfet gate, plus its own working current)
Is the mosfet that do all the "hard work", and ofcourse, as any regulator, convert in heat all the unneeded voltage ..... so, a s "good rule", the better thing is to use power supply as low as you need .....
Let me give some examples, so it maybe appear more clear, in my poor English

..... suppose you have a load with a FV of 5V (mean, the minimum voltage needed from the load for work), and an op-amp that have a minimum working voltage of 6V (or +/-3V, if you prefer), then you MUST use at least 6V, for ensure the correct working environment for the op-amp ..... 6V in this case is the better one, is always better to use a power supply a little bit over the minimum, for stability ..... ofcourse, if you use an op-amp with higher minimum voltage, you are constrained to use this one, as power supply, but all the voltage over the FV of the load will become converted in heat and dissipated from the mosfet, so, still as example, if you use 6V with a 5V FV load, your mosfet need to convert in heat just the 1V over, when instead you use 12V, the mosfet need to dissipate the extra 7V in heat ..... assuming you use it at 1A, the difference is from 1W to 7W, to be continuously dissipated.
Also, i personally suggest to use high current mosfets, cause, more the mosfet is rated and manufactured for high current, more efficent is the internal structure in heat dissipation ..... also, HEXfets and TrenchMOS ones are the better ones in fact of lower internal resistance and heat transfer ..... so, also if you just need 1A, the better choice can be a 20 or 30A mosfet, or more, rated for relatively low voltages, 40 to 100V (you don't go over 12V, anyway, so no need to buy a high-cost 800V power mosfet

)
About the op-amps, there's a lot of choice, LM358, LMH6645, MCP6001, TSV991, OPA350, TLC1078, TLC252, LMC7101, and so on, there are so much types that can be used in this schematic, that i gave intentionally no part numbers, so anyone can choose the ones that they can find more easily in their countries ..... only remember, if you use a double op-amp, instead a single one, to not left the inputs of the unused one "not connected" ..... the better way for "neutralize" an unused op-amp is to connect the output to the +IN, and the -IN to GND (not both the inputs to GND)