I did add that same code to the functions.php for the theme the subdomain is running — it didn’t work there.
As I continued to experiment, I thought it would be useful to disable something in the logged-in state so I could more easily see when it was working without logging in and out (to switch themes and such.) In doing so I figured out that I have to use the priority the menu-item was originally added with:
Without the “6” it won’t work. I’ve tried it with the priority I found in bp-core-buddybar.php, but since it does work in one theme and not another I’m wondering if maybe a theme can change this somewhere?
EDIT: Yup, a theme can change it … if it overwrites the original function with one with a new name but exactly the same code. *headdesk*. Searching for a unique bit of CSS I tracked down where the login code was actually being generated — not by buddypress, but not visually distinct from it either.