As regards metaphor, you can see how little of it remains in 마음을 먹다 (if metaphor it ever was) by noting the unavailability of the following expressions:
Compare 나이를 먹다, which can become, e.g.:
- 나이 드신 양반 (an aged gent)
- 선생님, 나이 헛잡수셨군요. (Sir, you've aged in vain--said of and to an older person acting foolishly.)
To start from the basics, 들다 and 잡수다 are the more respectful versions of 먹다 in the primary sense of to eat. (Thus children 먹다, but one's elders 들다 or 잡수다. Cf. animals feed, guests dine.) Because almost no sense of eating survives in 마음을 먹다, these other verbs cannot take the place of 먹다 in it.
먹으시다 may work (barely) if, for some rhetorical reason, you must use 마음을 먹다 for an elder.
선생님, 마음을 먹으셨으면 끝까지 해내셔야죠. (Sir, if you made up your mind, you should see it through to the end.)
However, using one of 결심하다, 작심하다, 작정하다 would be better. E.g.:
작심하셨으면 끝까지 해내셔야죠.
One usage requiring the exact nuance of 마음을 먹다 would be:
마음만 먹으면 못 할 일이 없다. (If only one is determined nothing is impossible--or literally, if only [missing subject] is determined, there is nothing [missing subject] cannot do.)
This you can say as a general truth, or to someone to encourage him, or of someone to mean that he is capable.
Replacing 마음만 먹으면 in it with e.g. 결심만 하면 would be perfectly grammatical but kill the poetry as it were.
Thus you might actually end up saying to an elder:
선생님께서 마음만 먹으시면 못 하실 일이 없을 것입니다. (If you, sir, only set your mind to it, nothing will be impossible, as spoken to the person in question; or if he only set. . . . as spoken of him to someone else.)
- 마음 먹기에 달렸다. (It depends on what one decides, or how one looks at it, or one's attitude.)
- 마음 먹기 나름이다. (Ditto.)
Otherwise, the degree of seriousness implied in 결심하다, 작심하다 or 작정하다 is perhaps not less than that in 마음을 먹다 or, if I had to put a number, 90% of the way.
Plain deciding is 결정하다 or 정하다.