Thanks for the advice. I rang the Swiss office and they fixed it. They said my Skywards number wasn't linked to my booking, which is odd because (a) I'd added it under "Manage a booking" right after the ticket was issued and every time I went back it was still there and (b) it was printed on the top of my BP. But it's all good now, and my return flight shows up against my profile.
Thanks again.