don’t do this setup_postdata($user); or this wp_reset_postdata(); these are only needed for posts and don’t do anything for users.
As far as $biography = get_field('biography', 'user_'. $userID);, I thought this was another custom field. If it’s just the standard WP biography field and your seeing it in the array then use $biography = $user['biography']; Only use get_field() for ACF fields.
Welcome to the Advanced Custom Fields community forum.
Browse through ideas, snippets of code, questions and answers between fellow ACF users