Except that the low-weight regions will cause the pathing system to prefer said regions, even if that results in excess tracking in the wrong direction. This is an old problem in pathing: making sure the weights are relevant.
Now, the counter is to simply state, "Then people should keep their high traffic regions always up-to-date." People are forgetful, and A*, despite being the best known general pathing algorithm, is far from cheap, averaging O(p*log(p)) with a worst case around O(p^2), where p is the length of the optimal path. Said path can be hundreds (or thousands, in the case of some siege engine traps) of tiles long, and to avoid getting trapped in local minima (of which there are many in typical fortress layouts), you can't really afford to perform the pathing piece-wise in DF. It appears also that Toady doesn't try to do it piece-wise, and the frame-rate hit can be seen if one elects to enable some large number of jobs for which the vast majority of the fortress population goes from idle to working. Sieges are also a case where the pathing system is heavily used---especially for those of us using "mazes" of opening and closing doors. Lastly, broken paths (pet-restricted/locked doors/any obstruction that prevents pathing) always result in worst-case performance for A*, as every tile that may be reached from the start node will be considered (and rejected) before the search is exhausted w/ no valid path.
Now, choosing to use weighted tiles can reduce the runtime cost of the resulting A*, but not enough to change the expected complexity behavior; its still dependent on the number of tiles that make up the path, and the complexity of the path---remember also, a more complex path will be predicted less optimally by A*.
The only real solution to reduce the cost of A* is to reduce the number of nodes that can be considered, which is the approach I've taken. I look at points where you have to deflect from the ideal (straight-line) path for some arbitrary path. From those nodes (and so far, my empirical testing results in only ~1-5% of nodes being "special"---more complex layouts result in more special tiles), A* is now guaranteed to not consider more nodes than that subset, and the speedup is noticeable, especially in worst-case scenarios (which are unfortunately common in DF). For example, I have ~21k ground pathable tiles (3x3 world tiles), resulting in an expected worst case of ~21k tiles if its a broken path. I think there's ~300 special tiles, which results in a worst-case of ~300 tiles considered for a broken path---fewer tiles considered in total that for a typical complete A* path. To generate the actual path needed (since my algo results in an ordered list of special tiles), simply draw the straight-line path between each item in the list (which can be done piece-meal, something A* can't do).
The devil is in the details, as additional time (and space) are used to track which tiles are special. Thankfully, restricting the algo to only considering ground tiles results in a very manageable amount of time (and space) used in overhead (a few milliseconds per 100 special tiles, last I checked). At present, I have 2 improvements that I'm working in: Tile coalescing (to further reduce the number of special tiles by eliminating redundant ones), and magma-/water-sensitive special tiles (to handle other ground-pathers, that might not care if a tile has too much water and/or magma---skeletal critters come to mind).
I do completely agree that there are other things eating up far to much computation time in DF, but pathing is at least something that can be reduced (significantly).