We did the reverse in April. The bus ride from Ensenada to San Diego is about 3 hours - give or take being luck enough to get on a bus that has a working toilet (we hadn't gone to far when the bus stopped to let 1 person off the use the john - but then everyone trooped off!).
Also, the crossing from Mex. into the U.S. took a long time. As I said, we were on the reverse - traveling up to San Diego from Ensenada - so EVERYONE had to get off of the bus along with their carryon luggage, etc. and go through customs. All said - it was an interesting trip and we were not put out as some of our fellow passengers were - we knew what to expect - it was all a part of the "experience" - and besides some of the scenery in MX. was breathtaking!
Would certainly do it again. We did Celebrity Infinity. Great experience.