Giardia can be very hard to get rid of. Does your puppy show symptoms or was it picked up on a well check vet visit?
I'm thnking that if the meds didn't clear it the first time, for the pup to have that level of infection it would have to come from the breeder (it takes more than 3 days to develope to that extent). But, as it can be asymptomatic and hard to catch on a fecal exam, the breeder may not be aware of the problem.
It will probably take multiple courses of treatment with Metronidazole or Panacure to rid your pup of the Giardia. On the final day of dosing, place the pup in a 'clean' area, then clean everywhere the pup comes in contact with. Also clean the pup, paying special attention to the perianal area, as cysts can remain in the hair around the anus.
The cause is most likely an contaminated water supply, which can be feces in the water bowl, puddles in the yard or road, ingestion of contaminated feces directly, water in steams and/or lakes frequented by animals.
Meds are required. Probiotics and fiber added to the diet may help with shedding the cysts. A low carb diet may help. Please discuss these options with your vet, as a low carb diet for a week or two shouldn't have an adverse effect on a puppy but you want to be sure. Maybe do a course of Metro, then Panacur, then Metro again. Again, please discuss with your vet.
Also see:
Causes of Giardia in Dogs
Hope this helps...
Duck poop can be toxic to dogs, so I would be careful about exposure to bird poop in general.