Here is how I would try this. It is probably close to what you are doing. I think the code will work whether or not you have ExcelLikeCurrentCell set, and whether or not your grid has a currentcell at all.
Whether it is any better than what you are doing, I am not sure.
public bool OnlyCurrentCellSelected()
{
GridRangeInfoList rangeList = grid.Selections.Ranges;
bool b = grid.CurrentCell.HasCurrentCell &&
(rangeList.Count == 0
|| (rangeList.Count == 1
&& grid.ExcelLikeCurrentCell
&& rangeList.ActiveRange == grid.CurrentCell.RangeInfo
));
return b;
}