Just wait.
I'm not saying she's "right" or "wrong" but ... just wait. Six weeks. It'll be OK. You'll look fine with your hair, longer or shorter, in an updo or styled, and you won't annoy the heck out of your sister/extended family or draw attention away from the bride.
Your purple hair will be just as big a deal six weeks out from your birthday as on it. If it weren't a big deal, it seems, your sister might not care so much about it.
I just got married, and I had one cousin show up with a new septum piercing, new plugs in her ears, jet-black newly dyed hair, 8+ new visible tattoos (I lost count), bold makeup, a verrry short homemade dress and sky-high heels (she's 19 and got all the mods in the last year). She was "just" being her, but it was the focus of several of the photos she was in because it was SO different from all the other guests (and we had some "weird" guests -- but our friends dressed in a wedding-appropriate manner, at least, and their changes weren't so dramatic), and so different from her "usual" look. She actually did look cute, IMO (aside from her badly applied makeup), but wow!
I'm not saying purple hair is anywhere on her level, but I am saying that as the bride, I will remember seeing her as much as or more than the people whose company I kept for longer or enjoyed more. Just something to think about when making any dramatic changes for an event you're somewhat resentful about attending in the first place.