Everything's OK except where you calculated moles of solute from the molarity - that will be moles = V in liters X molarity rather than dividing the molarity by the volume. Since the volume was 1 L, it didn't affect your answer.
Nice job showing the units also.
>> I am confused about the part that says assuming it consists of a single particle when dissolved. <<
When doing colligative property calculations, you always have to calculate the moles of solute "particles" rather than simply the moles of solute only. For example, when NaCl is dissolved in water you get two particles, an Na+ ion and a Cl- ion. So in a colligative property calculation of a solution of NaCl (the vapor pressure, boiling point, freezing point, or osmotic pressure) you would multiply the moles of NaCl by two to get the moles of particles. That is the number of moles you would use in each of the colligative property formulas.
Unfortunately this problem was not realistic because common synthetic detergents are salts of sulfonic acids, such as sodium p-dodecylbenzenesulfonate, Na+ -OSO2--C6H4--(CH2)11CH3. This gives two particles just like NaCl does, and even though the two detergent ions are very different from each other, ideally they behave the same with regard to colligative properties.
In your calculation, the way we would correct for this would be, knowing that each mole of detergent gives two ions in solution, to divide the moles calculated from the osmotic pressure by two. That would give simply the moles of detergent "formulas units" NaA, where A- is the anion (and Na+ is the assumed cation). Your calculated molecular weight would double. Maybe because of this confusion, the problem was simplified so that the number of solute particles was not a factor. If the solute was molecular (rather than ionic) then the original calculation would be correct, because molecular solutes like sugar only give one solute particle when they dissolve.
Steve