This is not how locks work. 'kernel-default-5.3*' would lock a package named 'kernel-default-5.3*' not 'kernel-default' with a version matching '5.3*'. In fact zypper supports just locking relative to an exact version ('>', '<' or '=' version). Matching versions might be a nice feature. We'll look into it...