While I agree with some of your points there are a few aspects worth noting. If I wanted to create a new web application I’d most likely not choose Wicket over Rails (or some PHP framework for that matter). In fact, I’d most likely not even consider any Java framework as an option.
However, if you have to rewrite or build upon an existing Java application – especially if this application interfaces with a lot of other systems – Wicket most likely is among the best choices you have. It also allows to deal with growing complexity pretty easily. Refactoring with Wicket is a breeze.

Wicket can become quite complex when you need to digress from the default behaviour, this is mostly due to its component-based design, it’s not inherently bad but it takes some time getting used to. Additionally, Java isn’t exactly known for being the most concise language.

As for writing your own JavaScript, like I said it can be done but you have to be careful. Using class selectors with jQuery for instance is a great way for extending Wicket components without getting in their way.

Finally, Wicket can indeed be quite inconsistent at times and lacks more complete documentation. However, I think the Wicket team is aware of this and has tried to improve on that matter with the latest release.