Here is a real downer post, sorry in advance:
20% and 100% are extraordinarily different. The problem with renewable energy sources is that they aren't very efficient. Solar power isn't very viable in Germany, or at least the efficiency of solar cells is dramatically lower in Germany than, say, Arizona. Efficiency factors.
I also doubt that there is enough land area to place wind farms to generate the needed electricity. Not to mention that covering nearly every square inch of land with solar panels and wind farms would destroy ecosystems just as surely as strip mining for coal.
Next you've got hydro, which either means tidal forces or dams. Its hard to build new dams because, again, it destroys environments. Tidal forces, while interesting, are relatively new and not very reliable.
Not to say I think its a bad idea, just unlikely. Though I've not done the research for Germany, I'm just extrapolating what I know about the US.
Even if they could do it, the other issue with alternative power sources is that they are extremely intermittent. "The Grid" does not actually store any energy. It provides the correct amount of energy all the time without storing the extra. In order to be "off the grid" you would have to find some way to store all the power generated during the day so that it could be utilized during peak hours. Battery technology, to put it gently, sucks. A lot of power would be lost in the storage/release process.
[/rant]
If it where up to me, I'd so go for it. I honestly don't care that much about the environment. It is impossible to fix every problem without consequence. Honestly, with 6 billion people crammed into the world, something has to give. Yes, either we kill off a bunch of people and control the population to a sustainable level, or other species and ecosystems will have to die. If we, humanity, move towards "greener" technology, at least some of what remains will be preserved. If we let every potential solution get bogged down by every other environmental lobbying group, everything will end up dead.
[/end rant]