Wrapping std::bind call in a function returning std::function
I see a few potential problems that you might want to address.  First, I'll have to say that it's not entirely clear what problem you're trying to solve. That is, it's not clear why one wouldn't just call func(s) as in your very first example.

Handle const functions and objects

The my_binder call doesn't currently handle const functions.  For example, we can easily declare Master::func const.  However, the template fails in this case.  Things only get worse if we also make go const and then declare the instance m of Master to be const.  I'm not just sure how to fix that.

Pass const string reference

A more minor issue is that the second argument to call_function ought to pass the string by reference to avoid creation of a temporary and can be const.

Consider using a lambda instead

Here's an implementation that doesn't use templates and may address your need.  

void Master::go() const
{
    const std::string s("hello");
    [&amp;](){func(s);}();
}


That funny looking last line is both declaration and call of a lambda.  It (rather pointlessly in this case) captures all in-scope variables by reference, takes no parameters and invokes func(s).  It then actually calls that lambda with no parameters.  It's a complex way of just saying func(s) but then, so was call_function(my_binder(this, func), s); so I am hoping that wherever it made sense to do the latter, it may be better instead to use a lambda.

To me, this is much simpler and easier to understand, especially since you're using C++11.