Th[e] question is about how to pass a function name and a string as arguments to another function.
The same thing we do every night, Pinky:
(defun append-to-documentation (a-function-name some-extra-documentation)
(put a-function-name 'function-documentation
(concat (documentation a-function-name t)
some-extra-documentation)))
Then you could call it like this:
(append-to-documentation 'workbench "some extra documentation to be appended")
Easy.
This is not a very good kind of question, because it doesn’t really help anyone else; you can always replace any subexpression with a variable. (Well, there are some tricky situations with quoting that commonly trip people up.)