Timestamping is recommended as the way to prolong signature validity after its certificate expiration date. One just need to add new timestamp signature before previous timestamp is expired. But what's the purpose of introducing special kind of signature if you still can do the same with main signature resigning data with fresh certificate while the last is alive?
Timestamping is a special kind of signature already.
TS = Sign(Hash(info | X) | time)
The renewal is :
TS' = Sign(Hash(TS | info) | time)
Of course, you could sign the original info with the new certificate and not using this technique. But this sometimes might not be possible or practical. For example when dealing with a contract, you would want to prolong the validity without having the party to meet again. Furthermore, the timestamping prolongation also ensures that the content of the original document remains the same during the procedure.