$_SESSION['m2_status_check'] causes problems during cron

In Membership2 $_SESSION['m2_status_check'] is causing some unexpected behavior during the cron event 'ms_cron_check_membership_status'

it initially gets set here:
app/model/class-ms-model-plugin.php
line 756
$_SESSION['m2_status_check'] = 'inv';

and then it gets checked in
MS_Model_Invoice::create_invoice()

the problem is that 'create_invoice' potentially gets called many times during the cron event 'ms_cron_check_membership_status'

but $_SESSION['m2_status_check'] gets reset after the first call to 'create_invoice'

the result is that the 1st invoice created during the cron job is set to STATUS_BILLED but all subsequent invoices created get set to STATUS_NEW

however, they should all be set to the same status