First, make sure you have a Page set up with the slug “join”. This page must exist if you expect to point visitors there.
Second, using this filter will NOT redirect you to the /join/ page when you directly visit wp-login.php. It only replaces the URL WordPress uses when generating links/URLs to the default signup form.
It sounds like what you’re wanting to do is something more along the lines of what these plugins already do:
https://wordpress.org/plugins/wps-hide-login/
https://wordpress.org/plugins/better-wp-security/
Without the use of a plugin like the above, you’re looking at a bit more work than one tiny filter callback to accomplish what you’re wanting.
I know this doesn’t directly answer the question, but the question is very broad and is most likely the reason you’ve not received any answers until now.
I would suggest looking over this tutorial if you really want to go down this road programmatically:
pippinsplugins.com/creating-custom-front-end-registration-and-login-forms/