Cuban revolutionary icon Fidel Castro appeared in public for the first time in nine months, chatting with school children and criticizing Barack Obama's recent visit.