Not sure if you've asked it before or not, Tom, but here goes:
Firstly, make sure you're defining your parameter ($param $$Title) within the $info section of your template. Otherwise, the reporting engine will think it's a variable instead, and will never prompt you to enter a value for it in the UI.
Secondly, the $if statement you've got there is very close, and just needs a set of brackets to set apart what the $if is actually testing, like this:
$if [$$Title = ‘’] $set $$Title $ReportTitle $endif
Other than that, I think all you need is to put the "Title: $$Title" line after wherever you set up your $if/$endif, so that if $$Title winds up being empty (and therefore reset to match your $ReportTitle value), you'll display the newly assigned value.
I think that should do it; just let me know if you have further questions.
Jason