myCheck[] non è un semplice campo, è un array di campi, che viene costruito ogni volta in maniera diversa quindi così non hai possibilità di sapere se era stato flaggato o meno, perchè l'indice che ha la prima volta che viene caricata la pagina potrebbe essere diverso dalla seconda.

es.

prima volta
codice:
<input name="myCheck[]" type="checkbox" value="vino" />  
<input name="myCheck[]" type="checkbox" value="birra" />  
<input name="myCheck[]" type="checkbox" value="aranciata" />
seconda volta
codice:
<input name="myCheck[]" type="checkbox" value="vino" />
<input name="myCheck[]" type="checkbox" value="cocaCola" />  
<input name="myCheck[]" type="checkbox" value="birra" />  
<input name="myCheck[]" type="checkbox" value="aranciata" />
quando carichi la pagina la prima volta il valore birra starà nella variabile

$_POST['myCheck'][1]

mentre la seconda volta la troverai su

$_POST['myCheck'][2]

Quindi confrontarlo con un eventuale session risulta impossobile. io risolverei mettendo un indice di sicura stabilità, tipo l'id della tabella aperitivi


Codice PHP:
<input name="myCheck[<?php  echo $row_Rs_portate['id']; ?>]" type="checkbox" value="<?php  echo $row_Rs_portate['aperitivi']; ?>" />
a questo punto sai che myCheck[5] sarà sempre la birra e quindi puoi mettere tutto l'array myCheck dentro session

Codice PHP:
$_SESSION['myCheck']=$_POST['myCheck']; 
e quando crei la pagina puoi confrontarli

Codice PHP:
<form action="preventivo.php" method="post">       
<?php do { ?>         
<h4>Aperitivi </h4>         
<div id="aperitivi">           
<?php echo $row_Rs_portate['aperitivi'];?>           
<input name="myCheck[<?php  echo $row_Rs_portate['id']; ?>]" type="checkbox" <?php echo (isset($_SESSION['myCheck'][$row_Rs_portate['id']])) ? "checked=\"checked\" ":""?> value="<?php  $row_Rs_portate['aperitivi']; ?>" />  

<?php } while ($row_Rs_portate mysql_fetch_assoc($Rs_portate)); ?>
<input name="" type="submit" />
 </form>
</div>


P.S. non so se sia utile avere una sintassi così per il ciclo while, in questo modo anche se la tabella è vuota crea esegue la prima istanza del ciclo, e questo potrebbe creare problemi