An inexpensive solution to try is hydrogen peroxide. Mix in a spray bottle, 1 part hydrogen peroxide to 2 parts water. You can do half and half if you need to. I've tried it on various fabrics and never had it harm the color, but since you are working on a light colored carpet anyway, it should be even safer.
Spray it on the area until thoroughly soaked and then allow to air dry. Blowing a floor fan on the area will help dry it out faster. You may need to repeat an additional time. You will need to do something to keep the dog away from the area until this is all done (Put a dining room chair over the spot or block off the room entirely.)
Hydrogen peroxide eats anything organic. This is why it is a miracle worker when it comes to removing blood. It will work 100 times better than the store brand "enzyme removers."
I have a male cat that started marking the same spot on my carpet after all the hurricanes in 2004(he's a nervous fellow.) I bought a steam cleaner and cleaned it with resolve. I rented a Rug Doctor and cleaned it with their pet product. I tried Nature's Miracle. I had a professional come out and clean, and then had them out again to rip up the carpet, clean the sub floor, padding and carpet and use their own enzyme product. This all cost hundreds of dollars and DIDN'T WORK!
Ultimately, a $0.34 bottle of hydrogen peroxide completely fixed the problem. I now use this type of mixture for freshening my fabrics on the furniture even. Works like Febreeze without the strong perfume smell, because it eats the organic matter that causes the odors (dander, body oils, etc.) It's nice too because I'm not using a bunch of weird chemicals around my pets and baby.
If you want a product with the same chemical but a pleasant fragrance, you can use OxiClean to accomplish the exact same thing. Just mix it in a spray bottle (a scoop to 8-12oz of water) and spray the area until thorough soaked and allow it to dry completely.