These issues can have quite elegant solutions though.

Firstly, with the border, we could introduce a 'lip' to it, like on real buttons which has a slightly lifted edge all around. This gives the button a more defined edge, while not taking away from the neumorphic charm. This should make it easier for people to judge where the button begins and ends.

The buttons with a slight border now have their edges more clearly defined

Staying with the border, we need to ensure people know when it is being hovered over or when it is being focused on. For example, mobility-impaired users (or even power-users) will tab over elements and the content will typically be highlighted by an outline. In neumorphism, those outlines don’t necessarily exist, but we could add some subtle ones which indicate the navigation of a user while not interfering with the design aesthetic too massively.

A slight border change on hover/focus lets the user know the button is selected

The colour of this border against the background achieves a pass for WCAG AA for graphical objects and user interface components.

Next, we have the pressed state. Personally, I think this is when we can do some really nice work to make the button very clearly change state.

Neumorphism would suggest that the button should appear indented when pressed. We can do that, and it should be a good visual indicator of the state, but we can do even more. We could change the colour or icon (or both) in use to ensure the user knows something is now active. We could also add some sort of indicator that the button is active, like for example an LED light when you use some buttons in real life.