Also, if you do get stuck on the Iberian peninsula, it's really not much of a hardship. Between Madrid, Barcelona, San Sebastian, Lisbon, Porto, the Douro Valley, Granada and pretty much all of Andalucia, not to mention ferries aplenty to Morocco (don't waste your time in Tangier, though), you'll find it hard to pack it all into the 3 weeks you have there.