me respondo a mi mismo, obviamente en beneficio de la comunidad :P
Solución al menos de momento, parece ser que no guarda objetos, por lo tanto lo serializo:
Código PHP:
$CI->session->set_userdata('cart',serialize($CI->ruca_carro));
luego
Código PHP:
$objeto = unserialize($CI->session->userdata('cart'));