The behavior is same even for ParametricPlot and for more than two curves.
Plot has Hold attributes, like all the other plotting functions. This means that sometimes it does not not recognize the fact that its argument is a list if the head of that argument is not explicitly List. See: Plot draws list of curves in same color when not using Evaluate.
In your first case, the head of the expression in the first argument of Plot is ReplaceAll before evaluation, so Plot sets up a single style for it: