I believe "piję wodę przy każdym posiłku" could also be added as an option, sounds very natural for me as a Pole.
Yeah, I guess that's okay. Added now.
Why is it "do" and not "z"?
In order to express the idea that you don't just drink water when having a meal, but drink it in addition to your meal.
Would the same apply to wino or is that considered part of the meal?
My previous comment might have been a bit misleading. You can use both "z" and "do" in such sentences. I just wanted to explain why "do" makes sense here and also point out that it may even be a bit more elegant.
Is it correct to say: "Piję wodę z każdym posiłkiem" or does it sound strange?
Strange is too strong – it is a slightly odd(to me!), but acceptable, I think. Still, personally I would be more inclined to use „do” here(as in: „Piję wodę do każdego posiłku”).
It works. But anyway, I agree completely with Emwue.