We see folks do segmentation lots of different ways:
Some folks use latent class MNL to create segments but then they use their HB utilities to run simulations and so on.
Other folks put the HB utilities into cluster analysis to create segments, either alone, to create a segmentation that is just needs-based, or in conjunction with other potential segmentation basis variables. They might use cluster analysis for this or sometimes they use latent class/finite mixture modeling to create the segments.
Sometimes folks do separate segmentations, some with the utilities as basis variables, others with the non-utility variables as basis variables and then they combine all those segmentation solutions into a cluster ensemble.
Or folks might mix and match the above in an almost endless variety of ways using some other sort of custom ensembles in cluster ensemble analysis.
Although there are a very large number of ways one COULD go, I find it easier to stick with a simpler method, since ultimately you may be called upon to explain what you've done to a non-technical audience. For this reason I usually either use latent class MNL to make my utility-based segments or I use cluster analysis on the HB utilities. On rare occasions I'll build custom ensembles of segmentations, some done with utilities and some done with other variables.