After finally getting a Service Broker solution implemented successfully, I'm really impressed with the technology, and frustrated how difficult it can be to implement and get it really working as expected.
First, understand the technology. There are some great resources out there to help you get started. The first place to go is Klaus Aschenbrenner's book, the one that Greg Low reviewed this past week. It's an amazing resource and played a large part in my success. (I bought it for my Kindle, and used the PC Kindle program to have the book open in a window next to SSMS, to easily reference the material on the task you're trying to complete.)
Next, read through Remus Rusanu's site and blog, especially his material on troubleshooting.
Finally, and perhaps most importantly, understand your application's requirements. In implementing an asynchronous messaging technology to improve scalability and performance, some things that worked very well with another solution may not work the same way. Understand the exact requirements, and the expectations of the application software and make sure that those expectations are met.
Set up a test environment - even if the databases are on the same server. Service Broker's amazingly fast at sending messages on a local system, and changing the Route properties to point at the local system is easy. Create a checklist of the data changes on one side of the application and how the other side should look afterwards, and check each one to see that the expected result was realized.
Service Broker is a great solution for getting data from one place to another, but the samples can be misleading, so read as much as you can, so you fully understand it, then focus on the application.
Allen