I don't see why you should get compensation (it's not like it is an essential purchase or a necessary thing to have so it is hardly detrimental to your life for it to be a week or two later than expected). You can either wait or cancel your order, the choice is yours.
But I agree with you that it would be nice if they were able to give you an accurate delivery date and keep you informed about any delays.