Storm ruins cruise to Mexico; passengers divert to San Diego