Charge-Coupled Device (CCD) detectors, widely used to obtain digital imaging, can be damaged by high energy radiation. Degraded images appear blurred, because of an effect known as Charge Transfer Inefficiency (CTI), which trails bright objects as the image is read out. It is often possible to correct most of the trailing during post-processing, by moving flux back to where it belongs. We compare several popular algorithms for this: quantifying the effect of their physical assumptions and tradeoffs between speed and accuracy. We combine their best elements to construct a more accurate model of damaged CCDs in the Hubble Space Telescopes Advanced Camera for Surveys/Wide Field Channel, and update it using data up to early 2013. Our algorithm now corrects 98% of CTI trailing in science exposures, a substantial improvement over previous work. Further progress will be fundamentally limited by the presence of read noise. Read noise is added after charge transfer so does not get trailed - but it is incorrectly untrailed during post-processing.