お〜する・ご〜する
General humble patternmachine translation
Formationお + verb ます-form (drop ます) + する (持ちます→お持ちする); Sino-Japanese words: ご + verbal noun + する (ご案内する). More humble: お〜いたす
お〜する is the humble formula for verbs without a special form: ます-form minus ます, sandwiched between お and する — お持ちします (let me carry that for you), お送りします (let me see you home / I'll send it), お知らせします (I'll let you know). Sino-Japanese verbs use ご: ご案内します (let me show you around), ご説明します、ご連絡します. Replacing する with いたす takes the humility one step further: お持ちいたします.
An important condition for use: the action must be DIRECTED TOWARD or benefit the other person. お持ちしましょうか is natural because you're carrying something FOR them; but an action that concerns only yourself doesn't fit this pattern — you don't say ×お風呂にお入りします. If your action has nothing to do with anyone else, plain です・ます is polite enough.
Set the three same-mold お〜 patterns side by side so you don't mix them up: お持ちになります — THE ESTEEMED PERSON carries it (honorific); お持ちください — please carry it (respectful request); お持ちします — I will carry it (humble). Same お — the sentence ending decides everything. The polite offer お〜しましょうか (shall I … for you?) is the form you should master first.
Examples
荷物が重いですね。お持ちしましょうか。
Your luggage looks heavy. Shall I carry it for you?
駅までお送りします。
Let me see you to the station.
学校の中をご案内します。
Let me show you around the school.