Your car has OBD level 2, if the fault has been fixed (say the oxygen sensor has been replaced), the computer in your car tests the system, during a "drive cycle" which is a precise drive pattern under certain conditions which may take a week or even several weeks to complete. When it no longer sees the fault it initially saw (which caused the light to turn on) it will by itself turn off the light. Using a scan tool to erase the code and turn off the light erases all test monitors and may actually prolong the time needed to run all test monitors needed to pass many state "Smog Tests". If a scan tool is used to erase the codes stored the light disappears but all the monitors need to self test, behind the scene you don't see the light but when a smog station test your car they will not allow a test of your car until a sufficient amount of monitors have been self tested by the computer in your car.