Jon never would have wished it normally. But it was a stable time loop. He made a wish which would, much later, force him to travel back in time and make the very same wish, keeping the time loop going. And it also forced him to make the second wish:
"I wish that my counterpart from this time would turn into a guy, Jon, and be in my family instead of Karyn's family."
Jon knew, once he had wished to know, that he had really been Karyn's twin sister Jillian, but he didn't remember any of it. He couldn't have--the wish was made outside the hearing of his counterpart of the time. He couldn't blame anyone for the wish, either, since it was a time loop--the loop was its own cause; he just made the wish because he made a wish which happened because of itself.
Now that he had made the wish, he was free to travel to the future. Or he could try to fix this... No, he needed to return. "I wish I was back in the future again."
Jon appeared in front of Karyn, who said "Hi", followed by silence.
"Hi, Karyn. I came back."
"Yeah, but this is messed up. You mean we were really twins but neither of us remember it?"
"Yeah, that's it exactly."
"Can you reverse it?"
"I don't know. We can find loopholes in wishes, right?"
"Could be. How long ago was it?"
"It was... you know, I have no idea how long ago it was. I wouldn't remember it anyway. It could have been yesterday and we forgot a whole life together. It could have been when we were born, and all my life as Jon was real. I don't know, but... I wish I know now."
The stone told him, directly into his mind.
Then Jon explained, "Karyn, I know how long ago. It was...."