I like the Leibniz notation, and I think the reason it's survived for over 300 years and continued to be almost the only game in town is that in many respects it's a miracle of design. Nevertheless it's an artifact of an earlier era in the history of mathematics, and anecdotally I seem to encounter a lot of mathematicians who feel that it's ugly, bad, and illogical. There seem to be two fundamental issues involved: (1) it's commonly interpreted using infinitesimals, which didn't get rehabilitated by non-standard analysis (NSA) until ca. 1960; (2) it predates the notion of a function.
Issue #1 seems to me to be a non-issue. In fact Blaszczyk et al. (see p. 10) have argued that Leibniz and Fermat had a pretty fully developed notation and terminology for what NSA refers to as the "standard part:" they called it "adequality" and used the symbol ${}_{\ulcorner\!\urcorner}$. From this perspective what NSA contributed was nothing more than some systematization of long-established practices and some model-theoretic work that showed that this systematization was sufficient logical justification for those practices.
But I think the complaints about the Leibniz notation may have more merit when it comes to issue #2. For example, in comments in this mathoverflow question, Andrej Bauer complains that:
it's legal to write $\int x^2\: dx=x^3/3+C$ (which exposes the bound variable $x$)
I suggested in that comment thread that this could be OK if one simply interpreted the notation $x$ as the identity function, but Andrej Bauer pointed out that that may not be enough to explain all possible uses of this feature of the notation.
Are there well thought out modern alternatives to the Leibniz notation that would address issue #2? The closest I can think of is something like this:
$ \int x \mapsto x^2 = \{f|\exists C\ f(x)=(x \mapsto x^3/3+C)\}$
This uses the notation $\mapsto$ for constructing anonymous functions, e.g., $x \mapsto x^2$ means the function $f$ such that $f(x)=x^2$. Well, it works here, but it's awfully painful to write. Are there better alternatives that are either used by a significant number of people or that have been "test-driven" enough to show that they're really practical?