All examples I find on the web for using SQL Server Service Broker queues seem to have two queues. I don\'t understand why and every example seems to assume that this is so
Technically you can use one queue using SSB technology in your application. In this case this queue has a mess from request messages from initiator and response messages from target. Your stored procedure should implement mechanism to distinguish one from another, sort out them, decide which response is for which request and so on. Also take in mind that RECEIVE messages from this queue in exact order and you can't skip some of them and leave in queue for further processing.
Maybe better in your case to follow Remus Rusanu's answer and implement your queue using database table?
SSB idea is simple - Initiator places request message into Target's queue while waiting response message from Target in its own queue. Is it your case? If no, maybe you need not SSB at all?