I just been to Tenerife for work a couple of times, but they have some pretty impressive skateparks. Canary islands in are amazing: good weather almost all year, beaches, great hiking/surf spots and cheap food and accomodation.
With three weeks you have plenty of time to move between islands if you want
These parts is fully recorded on canary islands: