ID is correct.
You had:
if ($cart->Items[$n]->ID == $id) {
$cart->Items[$index] = null;
$index doesn't exist... it should be:
if ($cart->Items[$n]->ID == $id) {
$cart->Items[$n] = null;
Your friends over here at WebAssist! These Dreamweaver extensions will assist you in building unlimited, custom websites.
These out-of-the-box solutions provide you proven, tested applications that can be up and running now. Build a store, a gallery, or a web-based email solution.