Milan, Rome and Perugia. The easiest (most likely cheapest) option would be to fly into Rome, rent a car and drive.