You should see a doctor and get an X-ray to rule out fracture.
Ouch. Sounds painful. And absolutely, it could be broken. Sounds like it may be as you have some of the symptoms such as redness, pain, swelling and it 'looking weird' may be that it is out of place. You need to go ahead and head in for an X ray in my opinion. They often will put a splint on it to help it heal correctly. Icing it was great, exactly what you should do and I'd take ibuprofen to reduce swelling and help with pain. But ultimately, you probably need to get it looked at and x rayed to know if it is fractured. Let me know, okay?