Do you have a tracking #? It may be that your order is held up in customs. I know from personal experience that customs into the UK can be VERY slow.
If your order hasn't been sent I would request a refund. They should refund you if it has not yet been sent out as 4 weeks is pretty ridiculous. If they refuse to refund you, you may be able to get your money back anyway.
If you paid with your CC via Paypal then you can dispute the charge with your CC company and they will most likely quickly return the funds to you. If you just paid through Paypal, there is not a whole lot that can be done as Paypal's security outside of Ebay is very limited to say the least.