Should you re-write legacy applications?

Are there any papers/studies from Gartner or someone that details the pro-cons, costs/value-adds ? If you have a working application, would you re-write it to use the latest technology? Would you rewrite a custom working application to make it pluggable, generic, component based/service based etc? Especially if it takes enormous amount of time.

I know most of the answers are very specific to the situation. In our situation, its highly favorable to stick with the legacy application because thats not what gets us the revenue, they are infrastructure components. However, we need some industry view on this, this seems pretty common during mergers/acquisitions etc hence I expect there to be lot of studies looking at this from architectural/value-add perspective.

Any guidance (thoughts, real world experiences, links to valuable studies, articels from industry leaders/analysts etc) will be highly appreciated.