The scm_prefer_prompt variable feature added in Capistrano 2.1 only appears to affect whether or not to include the --password command line option on 'svn' command lines.
It should also be considered when responding to a remote command's prompt for the password. Currently if scm_prefer_prompt is set, no password variable is set, and the remote svn command prompts for a password, a blank password will be sent. This makes svn ask then for a username, which confuses Capistrano into waiting forever for the command to complete.
In my opinion, it would be preferable if the scm_prefer_prompt feature encapsulated the pattern of asking for the password itself, as can be done like so:
set(:scm_password) { Capistrano::CLI.password_prompt("Subversion password: ") }
However, this sort of muddles the two goals of prompting for a password and avoiding the password appearing in plain text within the svn command lines, at least if implemented exactly the same way. Perhaps scm_prefer_prompt could tell Capistrano to prompt for a password, store that password, and use it in response to only remote prompts. Hard to say.