Your problem is that the find command does not interpolate/interpret directory glob(s) (the directory list that it must seek under), it only interpolates the pattern as a glob that must match. What interprets the directory globs is the shell itself you run find inside. When you run find via ssh, there is no shell to do this job.
Luckily enough, there's no rule against running a shell via ssh and make that shell run your command with all the required stuff interpolated and the rest of the wildcards preserved for find itself.
Something like what I used on my machine:
ssh lx@localhost "bash -c '/usr/bin/find /tmp/d* -name \"f*\" '" lx@localhost's password: /tmp/d1/f1 /tmp/d2/f2