The definition of a bug has nothing to do with the behavior of the software. A bug is defined based on whether the behavior of the software matches it's intent. And who is to say what the intent was? (Since I'm dealing with programmers here, I'll clarify the first sentence - there is no possible software behavior that, in and of itself, constitutes a bug).
Bear in mind that generally a bug is something software developers are supposed to fix. So the definition of a bug is based on what they want to fix. For example, "working correctly more than 50% of the time is a feature we plan to release in future versions". Anything can be defined as not being a bug by pretending the software was never intended to address that particular problem. So, in practice, what constitutes a bug is a purely political consideration.
(As an aside, this cuts both ways. To a client that doesn't have to pay for bug fixes but does have to pay for new development "it doesn't do some feature that I just thought of but which I've now decided is 100% implied by the things I did mention" is clearly a bug.)