I agree with Braegh's assessment of the logical statements, however, there is a nuance that was not addressed:
It is not stated that the knights and knaves are logicians. As such we should take their statements at face value. Meaning that we should treat them as regular people. I'm sure you've heard the statement "the sky is blue or my name isn't Batman!". The 'or' in this case does not act like a normal OR operator, but more like an XOR operator. Meaning if the sky is blue - first part of the statement is true - then the second part has to be false. Likewise, if the second part of the statement is true, then the first has to be false. That's how these statements are understood in everyday speak.
Given this we can assess the situation like this:
Joe is still a knave, as per Zippy's statement. However, since we know Joe is a knave, and Peggy states "I am a knight or Joe is a knave", then Peggy cannot be a knight. Since Joe is a knave, Peggy has to be lying about being a knight, making her a knave.
Now for the tricky part:
Since both Joe and Peggy are knaves, Zippy can theoretically be either knight or knave and still have these statements make logical sense. However, let's keep treating these people as people and not logicians. If it rained on Monday and Tuesday and I asked you to lie about it, would you say "it was sunny Monday and rained on Tuesday"? I would wager not. Asked to lie about something, most people would lie about the whole thing and say it was sunny on both days. So we should really be treating the statement "Peggy is a knight and Zippy is a knave" as two separate statements. As such, and since Joe is a knave, this would make Peggy a knave - something we already knew - and Zippy a knight
So that's my interpretation: Peggy and Joe are knaves and Zippy a knight.