I'm amazed how many times this question has been asked on the web and still no answer. Here's the solution I was able to come up with:
add_action( 'woocommerce_single_product_summary', 'neonbrand_show_member_price_non_members' );
function neonbrand_show_member_price_non_members($price) {
global $product;
if ( $product->is_type( 'variable' ) ) {
$variations = $product->WC_Product_Variable::get_available_variations();
$variations_id = wp_list_pluck( $variations, 'variation_id' );
if ( ! wc_memberships_is_user_active_member( get_current_user_id(), 'vip-membership' ) ) {
$a = get_option( 'wc_memberships_rules' );
foreach($a as $value) {
if(!empty(array_intersect($variations_id, $value['object_ids']))) {
$discount = $value['discount_amount'];
$nonmember_price = $product->get_price();
$member_price[] = $nonmember_price - $discount;
}
}
echo '<p class="price"><b><i>Member Price As Low As: $'.min($member_price).'</i></b></p>';
}
}
}
I have variations on most products so that's why I had to implement the "Member Price As Low As" because the variations had different discounts. Obviously the incentive for all of this is to get people to become members.

This should be a feature of the plugin IMO. But ♂️