Hi and welcome to travelpunk !
You do have a great selection of cities, where there is a lot to do. You'll have a great time for sure !
Does the number of days you mentionned include the time to change city ? Otherwise, most of the 3-day stays are most likely to be : first day, arrival, third day, departure. So it implies there is only one full day to visit, and none on your two-day stay.
If this is the case, I'd suggest you skip one or two cities, to allow you at least two full days in the destinations of your choice. Or add another overnight travel, like Prague-Berlin for example.
Try to keep your itinerary as flexible as possible when on the road. Since you'll be travelling during the high season, it would be better to book your beds in advance, but this shouldn't prevent you from changing your itineray as you'd lose only a few $ if you skip one place.
Am I making sense ?