It all depends - on you, your experience, your team, etc:
- The usual/older approach of Panels, Widgets and Compositing will be easier to work with/more familiar:
- If you are a Java programmer experienced with frameworks like Swing, etc. (I think that was the point of the GWT team),
- Or if you come from the "desktop world" in general.
- The UiBinder approach is the newer one:
- Recommended if you are just starting your experience with GWT (it seems UiBinder is here to stay, and it allows more flexibility than the above approach),
- Recommended if you have experience with web development (or desktop frameworks that use markup, like .NET's XAML, etc), since you'll be working in the familiar world of HTML/XML,
- If you are working in a larger team, where you have designated designers in charge of the look of the web application (and they don't know/care about GWT). Cutting up the layout into HTML code should be pretty straightforward for them and you can, with little work, convert those templates into UiBinder's XML templates.
None of the above approaches is perfect - that's why it's worth to know their strong and weak points - but the end decision should be yours alone, since you know your/your team's capabilities best :)