Berlin is awesome, i went on one of this tours last year, same in Prague, their zoo is really nice. Budapest was bigger than i expected. But its nice, dont forget to taste some goulash there
Ljubljana is great but you'll see all the interesting stuff in a day, day tours to lake Bled, lake Bohinj or Postojna caves are great.
Switch Zagreb for Sarajevo and Belgrade if possible. Sarajevo is different to all other places you mentioned, they call it Jerusalem of Europe . I can give you contact for a local guide there, i was on his tour last summer.
Go to Dubrovnik and Sibenik (Croatia, Dalmatia), Bol on island Brac and Zrce on island Pag are party places for summer.