Subrogation is the method your home insurance company uses to collect on a claim it settled by where the responsibility falls on another party. Subrogation works both ways, allowing another person's insurance company to expect payment from you if you cause injuries or damages that the insurance company pays a claim on. Your own insurance company should never subrogate from the policyholder, and will even represent you in court if another company chooses to do so.
When you look at the concept of subrogation, trying to get the money from you that has been paid to you would not make much sense. The idea of subrogation is to allow insurers to minimize their losses by pursuing claims against those who cause injuries or damages. For instance, your neighbor's tree could cause extensive damages or injuries if it fell. You would file a claim with your insurance company and it will settle, and then attempt to subrogate the losses from your neighbor or their insurance company. If it is your tree that causes the injuries, then your neighbor's insurance company may attempt subrogation to recoup their losses. In this case, your insurance company is likely to defend you, up to the limits of your policy.
A policy will only pay for damage once. If the repairs were inadequate, you need to contact the contractor's insurance company. Similarly, if you received a settlement on the claim and chose to make the repairs yourself, then you, not the insurance company, is responsible for guaranteeing the work. If you file a later claim to make the same repairs again and the insurance company discovers that you have done so, they have the right to pursue you for the amount of the settlement. This is not subrogation, and unless you can prove that the claim was made in error could also lead to a fraud investigation. The claim and any costs associated with it are considered closed once you have received a final settlement.
Subrogation is primarily used to allow one insurance company to receive payment from the responsible party. If that person has insurance, then it is handled between the two companies. If that person is without insurance, then they are responsible for the costs out of pocket. Since the insurance company had to pay the claim in order to maintain their contractual obligation and the damage was caused by a known third party, subrogation is method of recouping what has been invested by the insurer.