Automatic re routing is practically impossible. There are too many unknowns.
Say I go off course because of a road closure. I may want to pick up my route when I can, but no great hurry, so maybe I'll run parallel for 10k before rejoining. But I may instead want to get back on course sooner in order not to miss a control point or a café or something. Or maybe I've just missed a turn 10 seconds ago and need to turn round now. Or maybe I'd prefer to just abandon the route all together and plot a new route to my destination. The computer can't know what I want to do.
The best it can do is alert you quickly and let you decide.
My Garmin 530 used to be good at detecting I was off route, but hopeless at deciding what to do about it. It would just have a bit of a breakdown and repeatedly advise "Make a U Turn" over and over, even when I'd got myself back on track, but it hadn't noticed. I haven't noticed this behaviour in the 1040